LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   troubleshooting /dev/mouse link in a Slack14 VM guest (http://www.linuxquestions.org/questions/slackware-14/troubleshooting-dev-mouse-link-in-a-slack14-vm-guest-4175478262/)

Drone4four 09-23-2013 06:36 PM

troubleshooting /dev/mouse link in a Slack14 VM guest
 
My mouse wheel doesn’t work in my Slackware guest VM. This is prolly because I selected the incorrect input device when installing. My, times have changed: /etc/X11/xorg.conf no longer exists and neither does xorgconfig. As root and with the xserver deactivated, ‘xorgsetup’ segfaults. The closest thing to an /etc/X11/xorg.conf is /etc/X11/xorg.conf-vesa. The only instance of Mouse in that file is:
Code:

InputDevice “Mouse1” “CorePointer”
I hesitated to try appending
Code:

Option "ZAxisMapping" "4 5"
because it made me feel stupid. My intuition was right b/c that didn’t help at all. How do I change my /dev/mouse link in Slackware14?

chemfire 09-23-2013 06:53 PM

Can you post the contents of /var/log/Xorg.0.log ? that should show us what driver its using. It may be that you will need to create an xorg.conf but we should start out with knowing what X is auto-detecting.

jtsn 09-24-2013 03:08 AM

Try adding the following to /etc/X11/xorg.conf.d/mouse.conf

Code:

Section "InputClass"
  Identifier    "PointerInputClass0"
  MatchIsPointer "True"
  Option        "ZAxisMapping" "4 5 6 7"
EndSection


Drone4four 09-24-2013 04:14 PM

Here is my /etc/X11/xorg.conf.d/mouse.conf:
Code:

Section "InputClass"
  Identifier    "PointerInputClass0"
  MatchIsPointer "True"
  Option        "ZAxisMapping" "4 5 6 7"
EndSection

Here is my /etc/X11/xorg.conf-vesa: http://paste2.org/j3AKB9EZ
Here is my /var/log/Xorg.0.log: http://pastebin.ca/2457897
Here is my dmesg: http://pastebin.com/XKZaXP3T

ReaperX7 09-24-2013 04:23 PM

When you run xorgsetup, check your /root folder for a xorg.conf.new file.

X has been having trouble recently with proper detection of multiple monitor displays on video cards actually NOT being there. The cause of X's internal configuration being messed up is an upstream issue that may need reporting.

Just edit the xorg.conf.new file as needed for DRI, and remove the lines for the extra displays, save, and copy it to /etc/X11 and it should work now.

Drone4four 09-24-2013 07:21 PM

Ah yes, thanks, Reaper.

I tried commenting quite a few different combinations of lines out of the xorg.conf.new in /root. I obviously copied that file to /etc/X11/xorg.conf.

I tried commenting out the second instance of Screen under the ServerLayout section and the second "Screen" section. The file was initially set to load two similar modules: dri and dri2. I tried commenting out dri2 (but leaving dri) and that still didn't fix the X server. Likewise, I commented out dri, but re-enabled dri2. Still no dice.

It's worth noting that both Device sections were commented out by default.

I can't seem get X to start with the new config. I'm not familiar enough with DRI to figure out what parameters are essential and what are not.

I would really appreciate it if someone could advise me on this.

Here are the contents of the xorg.conf that I am experimenting with:

Code:

Section "ServerLayout"
        Identifier    "X.org Configured"
        Screen      0  "Screen0" 0 0
#        Screen      1  "Screen1" RightOf "Screen0"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath  "/usr/lib64/xorg/modules"
        FontPath    "/usr/share/fonts/local"
        FontPath    "/usr/share/fonts/TTF"
        FontPath    "/usr/share/fonts/OTF"
        FontPath    "/usr/share/fonts/Type1"
        FontPath    "/usr/share/fonts/misc"
        FontPath    "/usr/share/fonts/CID"
        FontPath    "/usr/share/fonts/75dpi/:unscaled"
        FontPath    "/usr/share/fonts/100dpi/:unscaled"
        FontPath    "/usr/share/fonts/75dpi"
        FontPath    "/usr/share/fonts/100dpi"
        FontPath    "/usr/share/fonts/cyrillic"
EndSection

Section "Module"
        Load  "dri2"
        Load  "dbe"
        Load  "dri"
        Load  "glx"
        Load  "extmod"
        Load  "record"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option            "Protocol" "auto"
        Option            "Device" "/dev/input/mice"
        Option            "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier  "Monitor0"
        VendorName  "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

#Section "Monitor"
#        Identifier  "Monitor1"
#        VendorName  "Monitor Vendor"
#        ModelName    "Monitor Model"
#EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "SWcursor"                  # [<bool>]
        #Option    "kmsdev"                    # <str>
        #Option    "ShadowFB"                  # [<bool>]
        Identifier  "Card0"
        Driver      "modesetting"
        BusID      "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "ShadowFB"                  # [<bool>]
        #Option    "DefaultRefresh"            # [<bool>]
        #Option    "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card1"
        Driver      "vesa"
        BusID      "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device    "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport  0 0
                Depth    1
        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    4
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    8
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    15
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    16
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    24
#        EndSubSection
EndSection

#Section "Screen"
#        Identifier "Screen1"
#        Device    "Card1"
#        Monitor    "Monitor1"
#        SubSection "Display"
#                Viewport  0 0
#                Depth    1
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    4
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    8
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    15
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    16
#        EndSubSection
#        SubSection "Display"
#                Viewport  0 0
#                Depth    24
#        EndSubSection
#EndSection

Here are the contents of my /var/log/Xorg.0.log: http://pastebin.ca/2457945

ReaperX7 09-24-2013 07:36 PM

Comment out only the extra monitors. DRI2 and DRI are the driver handlers, and DRI2 is the handler for the Gallium API under Mesa. Leave those uncommented along with GLX.

Here's a general usage revision you might need:

Note: I have added the fbdev driver detection, but this can be safely ignored if you don't have the xf86-driver-fbdev package installed from /extras. It's more or less there for legacy purposes.

You can also swap out the modesetting driver for any other video card driver needed such as radeon, nouveau, or intel should you have those cards.

Code:

Section "ServerLayout"
        Identifier    "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath  "/usr/lib64/xorg/modules"
        FontPath    "/usr/share/fonts/local"
        FontPath    "/usr/share/fonts/TTF"
        FontPath    "/usr/share/fonts/OTF"
        FontPath    "/usr/share/fonts/Type1"
        FontPath    "/usr/share/fonts/misc"
        FontPath    "/usr/share/fonts/CID"
        FontPath    "/usr/share/fonts/75dpi/:unscaled"
        FontPath    "/usr/share/fonts/100dpi/:unscaled"
        FontPath    "/usr/share/fonts/75dpi"
        FontPath    "/usr/share/fonts/100dpi"
        FontPath    "/usr/share/fonts/cyrillic"
EndSection

Section "Module"
        Load  "dri2"
        Load  "dbe"
        Load  "dri"
        Load  "glx"
        Load  "extmod"
        Load  "record"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option            "Protocol" "auto"
        Option            "Device" "/dev/input/mice"
        Option            "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier  "Monitor0"
        VendorName  "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "SWcursor"                  # [<bool>]
        #Option    "kmsdev"                    # <str>
        #Option    "ShadowFB"                  # [<bool>]
        Identifier  "Card0"
        Driver      "modesetting"
        BusID      "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "ShadowFB"                  # [<bool>]
        #Option    "DefaultRefresh"            # [<bool>]
        #Option    "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card1"
        Driver      "vesa"
        BusID      "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "ShadowFB"                  # [<bool>]
        #Option    "DefaultRefresh"            # [<bool>]
        #Option    "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card2"
        Driver      "fbdev"
        BusID      "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device    "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport  0 0
                Depth    1
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    4
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    8
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    15
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    16
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    24
        EndSubSection
EndSection


turtleli 09-24-2013 08:33 PM

Maybe I'm confused. What are you trying to solve? Your initial post suggests to me that you were able to start X in the VM though you couldn't get the mouse wheel working.

If it was just the mouse wheel, there's no need to mess about with DRI, DRI2, monitors, graphics drivers or other display related stuff. You probably don't need a full xorg.conf, you should only need to override the mouse configuration, something like what jtsn suggested but obviously we need to figure out what should really go in that file.

I don't know if it'll help, but perhaps you could try using xev and scrolling your mouse wheel in the window. Look for what button events occur (if any) when you scroll up and down. For example, I get ButtonPress and ButtonRelease events for button 4 when I scroll up and button 5 when I scroll down.

ReaperX7 09-24-2013 09:31 PM

Virtual Machines, as he's pointing out, often have issues with peripheral devices being detected, especially VirtualBox as of late. I've been noticing that VirtualBox's mouse is somewhat glitchy and doesn't often register properly and the vboxvideo driver seems to not want to work with X11 in most regards simply not working at all and crashing.

In regards to this, a full xorg.conf might not be needed, but it's a good place to start the process of finding out what went wrong by having a master xorg.conf file to work from. As his Xorg.log.0 shows, basically, vboxvideo failed to load completely which caused vesa to fail too, and without fbdev to fallback, there was no available driver, and since X11's configuration mode has been problematic, xorgsetup fails to work properly resulting in the fact he couldn't get his mouse working also.

xorg.conf might be legacy, but it damn well works.

In fact VirtualBox has been rather problematic as of late with the Additions drivers being very glitchy and buggy, not just with GNU/Linux, but FreeBSD, and Windows as well.

turtleli 09-24-2013 10:37 PM

Quote:

Originally Posted by ReaperX7 (Post 5034190)
In regards to this, a full xorg.conf might not be needed, but it's a good place to start the process of finding out what went wrong by having a master xorg.conf file to work from.

I do not agree. Why introduce more variables to debug? xorg.conf files are useful if you need to override autodetect settings. It should be kept minimal, you should only fix what doesn't work. Drone4four cannot even start X with the new config, so having a full xorg.conf has instead introduced problems.

ReaperX7 09-25-2013 07:21 PM

He can't start xorg due to the fact he has a bad video driver.

Instead of condemning a full configuration file, you need to understand why it's useful...

...to present an xorg.conf DEFAULTS setup which you know always works. He needs defaults to work from to see what the standard defaults are then re-customize back to his personalized specifications.

For him the "modesetting" driver might not be wise to use, so he can switch it with the "vesa" driver.

Just becasue a script is old doesn't devalidate it's usage and usefulness. Automation often has it's problems and just because the automated design is there, doesn't walways mean it's always the best choice.

turtleli 09-25-2013 09:32 PM

...
Quote:

Originally Posted by ReaperX7 (Post 5034896)
He can't start xorg due to the fact he has a bad video driver.

Initial post states: Mouse wheel not working, which implies X was running and there was a working video driver.
Later post states: Cannot get X to run.
Changes made between X running and not running: xorg.conf
Cause of X failure: bad xorg.conf configuration

Quote:

Originally Posted by ReaperX7 (Post 5034896)
Instead of condemning a full configuration file, you need to understand why it's useful...

...to present an xorg.conf DEFAULTS setup which you know always works. He needs defaults to work from to see what the standard defaults are then re-customize back to his personalized specifications.

And I will repeat, it's now not working at all and has introduced problems?

I'm just saying, I am quite error prone but I (usually) read posts carefully and do do my research.

Please read the man page for Xorg(1) (xorgsetup executes this to generate an xorg.conf and then modifies that), in particular "-configure" in the OPTIONS section and the full CONFIGURATION section, and understand why autoconfiguration and minimal overrides for what isn't correct (i.e. wrong keyboard layout, video driver) is usually better than using a full xorg.conf. Essentially, safe fallbacks. If you provide a full xorg.conf, X will assume you know best. If you're wrong, well, it won't start.

Also, for a VM, why would you suggest that Drone4four use the nvidia, radeon or intel driver? It doesn't actually make sense.



I shall wait for the OP or others to respond before making further posts here.

Drone4four 09-26-2013 04:47 PM

The new /etc/X11/xorg.conf suggested by ReaperX7 now starts X. It's also worth noting that I am using vesa as the driver, and not nouveau. However my initial problem with the lack of scroll wheel functionality persists. Even with
Code:

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option            "Protocol" "auto"
        Option            "Device" "/dev/input/mice"
        Option            "ZAxisMapping" "4 5 6 7"
EndSection

in my xorg.conf, the scroll wheel still isn't working. Here is the full xorg.conf that I am using now:
Code:

Section "ServerLayout"
        Identifier    "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath  "/usr/lib64/xorg/modules"
        FontPath    "/usr/share/fonts/local"
        FontPath    "/usr/share/fonts/TTF"
        FontPath    "/usr/share/fonts/OTF"
        FontPath    "/usr/share/fonts/Type1"
        FontPath    "/usr/share/fonts/misc"
        FontPath    "/usr/share/fonts/CID"
        FontPath    "/usr/share/fonts/75dpi/:unscaled"
        FontPath    "/usr/share/fonts/100dpi/:unscaled"
        FontPath    "/usr/share/fonts/75dpi"
        FontPath    "/usr/share/fonts/100dpi"
        FontPath    "/usr/share/fonts/cyrillic"
EndSection

Section "Module"
        Load  "dri2"
        Load  "dbe"
        Load  "dri"
        Load  "glx"
        Load  "extmod"
        Load  "record"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option            "Protocol" "auto"
        Option            "Device" "/dev/input/mice"
        Option            "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier  "Monitor0"
        VendorName  "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "SWcursor"                  # [<bool>]
        #Option    "kmsdev"                    # <str>
        #Option    "ShadowFB"                  # [<bool>]
        Identifier  "Card0"
        Driver      "vesa"
        BusID      "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "ShadowFB"                  # [<bool>]
        #Option    "DefaultRefresh"            # [<bool>]
        #Option    "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card1"
        Driver      "vesa"
        BusID      "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option    "ShadowFB"                  # [<bool>]
        #Option    "DefaultRefresh"            # [<bool>]
        #Option    "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card2"
        Driver      "fbdev"
        BusID      "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device    "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport  0 0
                Depth    1
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    4
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    8
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    15
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    16
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    24
        EndSubSection
EndSection

I'm not sure if this is still relevant, but is my /var/log/Xorg.0.log: http://paste2.org/Gbwm4745

Thank you ReaperX7, turtleli, chemfire, and jtsn for all your comments and suggestions.

Could any of you recommend trying something else to get my scroll wheel functionality?

Sorry for the delayed reply. I have been busy with other things.

turtleli 09-27-2013 03:48 PM

Quote:

Originally Posted by turtleli (Post 5034148)
I don't know if it'll help, but perhaps you could try using xev and scrolling your mouse wheel in the window. Look for what button events occur (if any) when you scroll up and down. For example, I get ButtonPress and ButtonRelease events for button 4 when I scroll up and button 5 when I scroll down.

Did you try this? What button events did you see (ignore all the mouse movement events)?

ReaperX7 09-27-2013 04:18 PM

ZAxisMapping should setup the wheel mouse completely and set it properly for scrolling. As Turtleli suggested run xev and see what comes out in the output and logs.

Do you by chance have package xf86-input-mouse installed? I know a lot of distributions ONLY supply the xf86-input-evdev package for udev purposes, and I think Patrick does still include some of the older drivers for maximum detection capabilities, but you should run and check pkgtool's list to be sure before we proceed any further.

I'm also wondering becasue of how fickle VirtualBox is, I'm wondering if there's a remote chance your system isn't looking for hald for some reason. It shouldn't, but just in case you require it, here's the downloads for it:

64-bit version
hal-0.5.14-x86_64-3

32-bit version
hal-0.5.14-i486-3

and the hal-info
hal-info-20091130-noarch-1

You shouldn't need this package at all to be truthful, but as I stated VirtualBox tends to misbehave and often doesn't work right in any regards.

Just curious but have you attempted to check your VirtualBox virtual machine of Slackware against another Virtual machine like qemu to see if one has problems the other does or doesn't?

As I stated before VirtualBox has been problematic as of late, so don't put too much stock in it being completely stable and useful, but we will see what we can do to help with the mouse problem.

To be completely honest, I think it's VirtualBox that has the problem and not Slackware.


All times are GMT -5. The time now is 08:58 PM.