VirtualBox

Opened 14 years ago

Closed 14 years ago

#6980 closed defect (invalid)

Scroll wheel events not relayed to OpenSolaris guest -> not VirtualBox-related

Reported by: Jan Ploski Owned by:
Component: other Version: VirtualBox 3.2.4
Keywords: Cc:
Guest type: Solaris Host type: Linux

Description

I've never managed to get the scroll wheel working in an OpenSolaris guest. With VirtualBox 3.2.4-62467~Debian~lenny and OpenSolaris snv_134 I see no events in guest xev when the host scroll wheel is moved, even though the events are visible and everything works fine on the host.

Attachments (4)

Xorg.0.log (13.6 KB ) - added by Jan Ploski 14 years ago.
Xorg.0.log from the OpenSolaris guest
Xorg.0.log-ps2 (13.4 KB ) - added by Jan Ploski 14 years ago.
Xorg.0.log from guest, with USB tablet emulation disabled
xorg.conf-host (3.6 KB ) - added by Jan Ploski 14 years ago.
xorg.conf-guest (2.1 KB ) - added by Jan Ploski 14 years ago.

Download all attachments as: .zip

Change History (28)

comment:1 by Michael Thayer, 14 years ago

I seem to recall that OpenSolaris has somewhat limited support for PS/2 mice. You might want to try using the USB tablet emulation. If you have an OpenSolaris host available I would be interested to know whether you can get it to recognise the scrollwheel on a PS/2 mouse.

comment:2 by Jan Ploski, 14 years ago

In fact I was already using the USB tablet emulation. Switching it off didn't change anything - no events reported.

Unfortunately, I don't have an OpenSolaris host to test with (also, the scroll wheel trackball involved is a USB device, not PS/2).

comment:3 by Juergen Keil, 14 years ago

On an OpenSolaris b134 host with vbox 3.2.4, mouse scroll events work just fine for an OpenSolaris 2009.06 guest (64-bit, with vbox guest additions installed).

comment:4 by Jan Ploski, 14 years ago

Is there anything I can do to gather/supply more information about my non-working configuration?

comment:5 by Juergen Keil, 14 years ago

Same with an OpenSolaris b134 guest on an OpenSolaris b134 host / vbox 3.2.4; scroll wheel events work just fine.

in reply to:  4 comment:6 by Juergen Keil, 14 years ago

Replying to jpl:

Is there anything I can do to gather/supply more information about my non-working configuration?

The following seem to be the relevant mouse log entries from the opensolaris b134 guest, from file /var/log/Xorg.0.log:

(**) Option "CorePointer"
(**) Mouse0: always reports core events
(**) Mouse0: Device: "/dev/vboxguest"
(II) XINPUT: Adding extended input device "Mouse0" (type: MOUSE)
(**) Mouse0: (accel) keeping acceleration scheme 1
(**) Mouse0: (accel) acceleration profile 0
(II) Mouse0: On.
(II) config/hal: Adding input device Microsoft PS/2-style Mouse
(II) LoadModule: "mouse"
(II) Loading /usr/lib/xorg/modules/input/amd64/mouse_drv.so
(II) Module mouse: vendor="X.Org Foundation"
        compiled for 1.7.4, module version = 1.5.0
        Module class: X.Org XInput Driver
        ABI class: X.Org XInput driver, version 7.0
(II) Microsoft PS/2-style Mouse: Setting Device option to "/dev/mouse"
(**) Microsoft PS/2-style Mouse: Protocol: VUID
(**) Microsoft PS/2-style Mouse: always reports core events
(**) Option "Device" "/dev/mouse"
(II) Microsoft PS/2-style Mouse: Setting Buttons option to "5"
(==) Microsoft PS/2-style Mouse: Emulate3Buttons, Emulate3Timeout: 50
(**) Microsoft PS/2-style Mouse: ZAxisMapping: buttons 4 and 5
(**) Microsoft PS/2-style Mouse: Buttons: 9
(II) XINPUT: Adding extended input device "Microsoft PS/2-style Mouse" (type: MOUSE)
(**) Microsoft PS/2-style Mouse: (accel) keeping acceleration scheme 1
(**) Microsoft PS/2-style Mouse: (accel) acceleration profile 0

Does your opensolaris guest have similar log entries?

by Jan Ploski, 14 years ago

Attachment: Xorg.0.log added

Xorg.0.log from the OpenSolaris guest

comment:7 by Jan Ploski, 14 years ago

The same entries seem to be present in my Xorg.0.log (see attached file above).

comment:8 by Michael Thayer, 14 years ago

My own experiements show that the scroll wheel works with an emulated PS/2 or USB mouse in an OpenSolaris guest - it only fails for the USB tablet. Studying the OpenSolaris source code makes me wonder whether this is intentional - see usbms.c as of line 2354, and specifically line 2412.

by Jan Ploski, 14 years ago

Attachment: Xorg.0.log-ps2 added

Xorg.0.log from guest, with USB tablet emulation disabled

comment:9 by Jan Ploski, 14 years ago

@michael: That's interesting, for me switching from USB tablet (removing the tick next to "absolute pointing device" in System configuration, right?) to PS/2 doesn't make a difference - no scroll events observable in either case, although Xorg.0.log looks slightly different (see second attachment above).

comment:10 by Michael Thayer, 14 years ago

Just rechecked, when I uncheck that here the scroll wheel works, but I don't have Additions installed in that guest (I will try that tomorrow). Could you please also upload your xorg.conf here? I will mention that my guest is OpenSolaris 2009.06, not snv_134, which may (or may not) be relevant here.

by Jan Ploski, 14 years ago

Attachment: xorg.conf-host added

by Jan Ploski, 14 years ago

Attachment: xorg.conf-guest added

comment:11 by Jan Ploski, 14 years ago

I started out with 2009.06, which I then upgraded to snv_134. As far as I remember, the scroll wheel didn't work with 2009.06 either. From your descriptions, I'm starting to suspect that it may be a host problem, so I also attached xorg.conf-host. The host is Debian with xorg 1:7.1.0-18.

I removed guest additions to see whether it matters - it didn't change anything (with PS2). So I reinstalled guest additions after this test.

in reply to:  7 comment:12 by Juergen Keil, 14 years ago

Replying to jpl:

The same entries seem to be present in my Xorg.0.log (see attached file above).

(**) Option "Device" "/dev/usb/hid0"
261 	(II) input: Setting Buttons option to "3"
262 	(==) input: Emulate3Buttons, Emulate3Timeout: 50
263 	(**) input: ZAxisMapping: buttons 4 and 5
264 	(**) input: Buttons: 9
265 	(II) XINPUT: Adding extended input device "input" (type: MOUSE)
266 	(**) input: (accel) keeping acceleration scheme 1
267 	(**) input: (accel) acceleration profile 0
268 	(WW) input: couldn't get wheel state

Hmm, it is trying to use an USB HID mouse device here (/dev/usb/hid0), and seems to have problems accessing mouse wheel information ("couldn't get wheel state").

I've not yet seen such a section in my Xorg.0.log file on the opensolaris guest.

Are you passing a host usb device (usb trackball) to the opensolaris vbox guest?

comment:13 by Jan Ploski, 14 years ago

If by "passing a host USB device" you mean having it configured in the USB filters of the VM, then no, this section is empty.

comment:14 by Jan Ploski, 14 years ago

Also note that in Xorg.0.log-ps2 (which is what I got when I didn't configure the tablet emulation and which is what works for others) the error message about wheel state is absent.

comment:15 by Michael Thayer, 14 years ago

I'm afraid that I am simply unable to reproduce this. When I have Guest Additions installed even enabling the USB tablet does not help (as the Additions override the tablet). Can you reproduce this with a new VM? Preferably a plain 2009.06 one. If so, would you be able to give me step-by-step instructions as to how you created the VM (or even, if you have that possibility to make the new VM available for me to download, so I can try it out myself)?

comment:16 by Jan Ploski, 14 years ago

Well, I can reproduce it on this host simply by booting the 2009.06 LiveCD. No scroll events visible in xev.

Given your works-for-me assessment, I strongly suspect it has to be something in the host configuration. Do you have any clues what could I try changing?

comment:17 by Jan Ploski, 14 years ago

I just did an experiment and booted the host from the same 2009.06 LiveCD directly - then scrolling works. So it's not hardware, unlikely guest, must be something in the host configuration. However, scroll wheel works ok on the host. Does VirtualBox handle scroll events differently than, say a GTK or KDE application? Scrolling on the host works ok in other applications such as Firefox and Opera (and in xev, of course), so I rather doubt that it's the X system that doesn't relay events to VirtualBox properly.

comment:18 by Jan Ploski, 14 years ago

Maybe you can reproduce it if you use Debian as host with the 3.2.4-62467~Debian~lenny package on your side?...

comment:19 by Juergen Keil, 14 years ago

Replying to jpl:

Well, I can reproduce it on this host simply by booting the 2009.06 LiveCD. No scroll events visible in xev.

And the absolute pointing device option is not checked?

(no vbox guest additions installed and absolute pointing device enabled is the only configuration where scroll events don't work for me in an opensolaris guest; see comment by michael )

comment:20 by Jan Ploski, 14 years ago

jkeil2, correct, the absolute pointing device option was not checked when I tried the LiveCD. At least not checked in the VirtualBox GUI for this VM (getting a little paranoid, I guess).

in reply to:  16 comment:21 by Michael Thayer, 14 years ago

Replying to jpl:

Well, I can reproduce it on this host simply by booting the 2009.06 LiveCD. No scroll events visible in xev.

Could you please attach the guest configuration XML file?

Given your works-for-me assessment, I strongly suspect it has to be something in the host configuration. Do you have any clues what could I try changing?

The host configuration shouldn't affect the guest, other than that if the scroll wheel is recognised by host applications it should work in the guest. (In this context VirtualBox is simply another host application, albeit a more complex one than the average!)

in reply to:  17 comment:22 by Juergen Keil, 14 years ago

Replying to jpl:

Scrolling on the host works ok in other applications such as Firefox and Opera (and in xev, of course), so I rather doubt that it's the X system that doesn't relay events to VirtualBox properly.

That is, xev on the host os reports button presses for buttons 4 and 5 when you scroll the wheel?

A similar test on the host OS would be "xinput test {devicename}" (replace {devicename} with the name or ID of the mouse device from "xinput list"). This should report button 4/5 events when the scroll wheel is used. Btw. what is reported on the host by "xinput list" for the pointer devices ?

Another thing that surprises me is that you're using "imps/2" protocol in the host's xorg.conf file, although you've said that you're using an usb (and not a ps/2) trackball device. Maybe "auto" protocol would be a better? You also don't set the number of buttons supported by the trackball device. Maybe you have to tell the Xorg server that the trackball supports at least five buttons?

Similar to http://humanreadable.nfshost.com/sdeg/scroll-wheel-mouse.htm:

Section "InputDevice"
 Identifier "Mouse0"
 Driver "mouse"
 Option "Protocol"    "auto"
 Option "Device"     "/dev/input/mice"
 Option "Buttons"     "5"
 Option "ZAxisMapping"  "4 5"
 Option "CorePointer"
 Option "SendCoreEvents" "true"
EndSection

comment:23 by Jan Ploski, 14 years ago

jkeil2, this is great advice, thanks!

The problem was fixed by adding Option "CorePointer" in section "InputDevice" for the pointer device on the host.

In the non-working configuration "xinput list" on the host would report the pointer device twice:

"Virtual core pointer"  id=0    [XPointer]
"Virtual core keyboard" id=1    [XKeyboard]
"Generic Keyboard"      id=2    [XExtensionKeyboard]
"Logitech Trackball"    id=3    [XExtensionPointer]
"Logitech Trackball"    id=4    [XExtensionPointer]

In the working configuration the id=4 entry is not displayed.

"xinput test" on the host reports scroll events correctly in both configurations (in the non-working configuration - for both ids).

comment:24 by Michael Thayer, 14 years ago

Resolution: invalid
Status: newclosed
Summary: Scroll wheel events not relayed to OpenSolaris guestScroll wheel events not relayed to OpenSolaris guest -> not VirtualBox-related

Thanks for the feedback, I will mark this as invalid then as it was a configuration problem not related to VirtualBox.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use