Announcement

Collapse
No announcement yet.

fglrx multiseat crash

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • c1981
    started a topic fglrx multiseat crash

    fglrx multiseat crash

    To anybody whose tried a fglrx-based multiseat setup.

    Using the same configuration files I use on my Nvidia based multiseat
    stations, stripping out the Nvidia options and replacing them with Ati ones - I get a partially working setup.

    1 out of 10 boots will be fairly stable, starting gdm manually from bash has a 5 - 10 success rate. If it crashes - which it does
    most of the time - it brings down the entire system with it. Using the
    same hardware with Nvidia cards causes no problems whatsoever.

    OS: Debian Lenny

    Hardware:

    CPU: AMD Phenom X4 9550 2,2Ghz
    MOBO: MSI K9A2 Platinum (flashed to latest BIOS)
    RAM: 4 GB Kingston HyperX DDR2 1066 running @ 800 for compatibility
    GPU 1 : Sapphire Radeon HD 4670 Ultimate
    GPU 2 : Sapphire Radeon HD 3450
    GPU 3 : Sapphire Radeon HD 3450
    GPU 4 : Sapphire Radeon HD 3450

    I haven't bothered setting up the 3rd and 4th GPU's - as bringing 2 up is already troublesome.

    Example xorg.conf for the first seat terminal 0:

    Section "ServerLayout"
    Identifier "Terminal0"
    Screen "Screen0" 0 0
    InputDevice "Keyboard0" "CoreKeyboard"
    InputDevice "Mouse0" "CorePointer"
    # InputDevice "NoKeyboard0" "CoreKeyboard"
    # InputDevice "NoMouse0" "CorePointer"
    # InputDevice "Sixaxis0" "SendCoreEvents"
    # InputDevice "Sixaxis0" "CorePointer"
    Option "IsolateDevice" "PCI:1:0:0"
    EndSection

    Section "Files"
    RgbPath "/usr/X11R6/lib/X11/rgb"
    EndSection

    Section "Module"
    Load "dbe"
    Load "extmod"
    Load "type1"
    Load "freetype"
    Load "glx"
    Load "dri"
    SubSection "extmod"
    Option "omit xfree86-dga"
    EndSubSection
    EndSection

    Section "ServerFlags"
    Option "AllowMouseOpenFail" "on"
    Option "Xinerama" "0"
    # Option "Aiglx" "true"
    # Option "DontVTSwitch" "Yes"
    # Option "DontZAP" "Yes"
    Option "HandleSpecialKeys" "always"
    EndSection

    ########## MAIN INPUT DEVICES ##########

    Section "InputDevice"
    Identifier "Keyboard0"
    Driver "evdev"
    # Option "Phys" "usb-0000:04:02.2-4.4.4/input0"
    Option "Device" "/dev/input/by-path/pci-0000:06:02.2-usb-0:4.4.4:1.0-event-kbd"
    Option "evBits" "+1"
    Option "keyBits" "~1-255 ~352-511"
    Option "Pass" "3"
    Option "XkbLayout" "us"
    Option "XkbVariant" "euro"
    Option "XkbModel" "evdev"
    Option "XkbRules" "xfree86"
    # "Logitech Ultra Flat Keyboard USB"
    EndSection

    Section "InputDevice"
    Identifier "Mouse0"
    # Driver "mouse"
    Driver "evdev"
    Option "Buttons" "5"
    # Option "Device" "/dev/input/mouse2"
    Option "Device" "/dev/input/by-path/pci-0000:06:02.2-usb-0:4.4.3:1.0-event-mouse"
    Option "Name" "Logitech TrackMan Wheel"
    Option "Protocol" "explorerps/2"
    Option "ZAxisMapping" "4 5"
    EndSection

    ########## DUMMY INPUT DEVICES ##########

    Section "InputDevice"
    Driver "void"
    Identifier "NoKeyboard0"
    EndSection

    Section "InputDevice"
    Driver "void"
    Identifier "NoMouse0"
    EndSection

    ########## SPECIAL INPUT DEVICES ##########

    #Section "InputDevice"
    # Identifier "Sixaxis0"
    # Driver "joystick"
    # Option "Device" "/dev/input/by-id/usb-Broadcom_Corp_BCM92045B3_ROM-event-joystick"
    # Option "Path" "/dev/input/js0"
    # Map Button 16 - square
    # Option "MapButton16" "button=3"
    # Map Button 15 - x
    # Option "MapButton15" "button=1"
    # Map Button 11 - L1
    # Option "MapButton11" "key=Alt_L,Left"
    # Map Button 12 - R1
    # Option "MapButton12" "key=Alt_L,Right"
    # Option "MapAxis1" "mode=relative axis=2.0x deadzone=3000"
    # Option "MapAxis2" "mode=relative axis=2.0y deadzone=3000"
    #EndSection

    ######### MAIN SCREEN SECTION #########

    Section "Modes"
    Identifier "Modes0"
    ModeLine "1680x1050" 147.1 1680 1784 1968 2256 1050 1051 1054 1087
    EndSection

    Section "Monitor"
    Identifier "Monitor0"
    VendorName "--> LCD"
    ModelName "[email protected]"
    UseModes "Modes0"
    DisplaySize 431 269
    HorizSync 30.0 - 81.0
    VertRefresh 56.0 - 75.0
    Option "CalcAlgorithm" "XServerPool"
    Option "DPMS"
    EndSection

    Section "Device"
    Identifier "Videocard0"
    Driver "fglrx"
    VendorName "ATI Corporation"
    BoardName "Radeon HD 4670"
    BusID "PCI:1:0:0"
    EndSection

    Section "Screen"
    Identifier "Screen0"
    Device "Videocard0"
    Monitor "Monitor0"
    DefaultDepth 24
    # ### generic DRI settings ###
    # === disable PnP Monitor ===
    #Option "NoDDC"
    # === disable/enable XAA/DRI ===
    Option "no_accel" "no"
    Option "no_dri" "no"
    # === misc DRI settings ===
    Option "mtrr" "off" # disable DRI mtrr mapper, driver has its own code for mtrr
    # ### FireGL DDX driver module specific settings ###
    # === Screen Management ===
    Option "DesktopSetup" "0x00000000" #single
    # Option "DesktopSetup" "0x00000201" #big
    # Option "DesktopSetup" "0x00000000" #dual
    # Option "DesktopSetup" "0x00000100" #clone
    Option "MonitorLayout" "TMDS, CRT"
    Option "IgnoreEDID" "off"
    Option "HSync2" "unspecified"
    Option "VRefresh2" "unspecified"
    Option "ScreenOverlap" "0"
    # === TV-out Management ===
    Option "NoTV" "no"
    Option "TVStandard" "PAL-G"
    Option "TVHSizeAdj" "0"
    Option "TVVSizeAdj" "0"
    Option "TVHPosAdj" "0"
    Option "TVVPosAdj" "0"
    Option "TVHStartAdj" "0"
    Option "TVColorAdj" "0"
    Option "GammaCorrectionI" "0x06419064"
    Option "GammaCorrectionII" "0x06419064"
    # === OpenGL specific profiles/settings ===
    Option "Capabilities" "0x00000000"
    # === Video Overlay for the Xv extension ===
    Option "VideoOverlay" "on"
    # === OpenGL Overlay ===
    # Note: When OpenGL Overlay is enabled, Video Overlay
    # will be disabled automatically
    Option "OpenGLOverlay" "off"
    # === Center Mode (Laptops only) ===
    Option "CenterMode" "off"
    # === Pseudo Color Visuals (8-bit visuals) ===
    Option "PseudoColorVisuals" "off"
    # === QBS Management ===
    Option "Stereo" "off"
    Option "StereoSyncEnable" "1"
    # === FSAA Management ===
    Option "FSAAEnable" "no"
    Option "FSAAScale" "1"
    Option "FSAADisableGamma" "no"
    Option "FSAACustomizeMSPos" "no"
    Option "FSAAMSPosX0" "0.000000"
    Option "FSAAMSPosY0" "0.000000"
    Option "FSAAMSPosX1" "0.000000"
    Option "FSAAMSPosY1" "0.000000"
    Option "FSAAMSPosX2" "0.000000"
    Option "FSAAMSPosY2" "0.000000"
    Option "FSAAMSPosX3" "0.000000"
    Option "FSAAMSPosY3" "0.000000"
    Option "FSAAMSPosX4" "0.000000"
    Option "FSAAMSPosY4" "0.000000"
    Option "FSAAMSPosX5" "0.000000"
    Option "FSAAMSPosY5" "0.000000"
    # === Misc Options ===
    Option "UseFastTLS" "0"
    Option "BlockSignalsOnLock" "on"
    Option "UseInternalAGPGART" "no"
    Option "ForceGenericCPU" "no"
    SubSection "Display"
    Depth 24
    Modes "1680x1050"
    EndSubSection
    EndSection

    Section "Extensions"
    Option "Composite" "Disable"
    EndSection

    Section "DRI"
    Mode 0666
    EndSection

    Lines used in defaults.conf to invoke the x-servers:

    ...

    [servers]

    0=Terminal0
    1=Terminal1

    ...

    [server-Terminal0]
    name=Standard server
    command=/usr/bin/X -br -audit 0 -sharevts -novtswitch -config /etc/X11/xorg0.conf
    flexible=false

    [server-Terminal1]
    name=Standard server
    command=/usr/bin/X -br -audit 0 -sharevts -novtswitch -config /etc/X11/xorg1.conf
    flexible=false

    Can anybody suggest a possible fix?

    I've tried different versions of fglrx, compiled my own module, tried the stock module and tried minimal versions of xorg.conf.

  • noobish
    replied
    Curious, because I cannot get the second X session to fire up. When I try with 1 card, fglrx segfaults. When I try with two cards, the second X session is unable to read the second card's VBIOS (which I suspect is a problem with the motherboard not advertising it).

    Are you using two cards? And would you be willing to PM me to discuss your config files?

    Leave a comment:


  • jamey0824
    replied
    Originally posted by noobish View Post
    CMorrow, have you had to change anything to your xorg or kdm config if/when you upgraded to kubuntu 10.04?

    I am having trouble getting past the splash screen when I try two seats with 1 fglrx card.
    Uh, I haven't checked my email for a month, but I can report that i have got multiseat working with kdm, and lucid. No nothing different from earlier versions. One thing I've noticed though, at one point I had switch the order of the seats, like in kdm where you have staticserver=:0,:1 switch that to :1, :0 This syntax is not correct but you should know what i mean.

    Leave a comment:


  • noobish
    replied
    CMorrow, have you had to change anything to your xorg or kdm config if/when you upgraded to kubuntu 10.04?

    I am having trouble getting past the splash screen when I try two seats with 1 fglrx card.

    Leave a comment:


  • jamey0824
    replied
    POWERplay is not supported on your hardware

    aticonfig --lsp
    Error: POWERplay is not supported on your hardware.

    I've tried that with using just one card, in default setup
    I wonder if power play isn't working with the latest drivers for any setup?
    I did two independent tests using radeon 3450 and Radeon HD 4670. Both no luck

    As a side note: I got my multi seat up and running. thanks cmorrow for the help. Still have some issues to sort out like most of the time when i hit down key computer beeps like crazy.

    Leave a comment:


  • CMorrow
    replied
    I never could get either the radeon or radeonHD drivers to work very well, but I never tried very hard either. As I was looking for good 3D performance, 98% of my testing on ATI hardware involved the proprietary fglrx driver.

    Leave a comment:


  • jamey0824
    replied
    Multiple radeon adapters

    Man thanks so much for the info. I have a follow up question. I know you having issues with dpms on you ati cards. Other than that can you tell me which drivers you had success with (ati, RadeonHD, frglx). I know you said previously that frglx worked minus the dpms. Did you try the other drivers (ati, RadeonHD)? I'll let you guys know my results on the dpms, if i can get that far.

    Leave a comment:


  • CMorrow
    replied
    I did indeed get multiseat working under Jaunty x64. In fact, it works great! I replaced my ATI cards with nVidia cards (Qty 3. 9800 GTX+) and now DPMS works. I was able to get Multiseat working with at least 2 seats using ATI hardware but never could get DPMS working.

    In fact, my wife, daughter, and myself ended up playing a 3 vs 3 multiplayer match of Demigod under Wine 1.1.20 on the same physical box (which ran rather well).

    My first initial response about your xorg.conf is that you need one ServerLayout section for each seperate X server you are trying to run. With 3 people on my machine, that means 3 server layout sections (seat0, seat1, and seat2 as I have defined them).

    Then, you need to remember to launch each of those X sessions using your login manager.

    I'm using Kubuntu which uses KDM instead of GDM, so you'll have to do things slightly differently, but I made the following changes in my /etc/kde4/kdm/kdmrc:

    Code:
    # List of permanent displays. Displays with a hostname are foreign. A display
    # class may be specified separated by an underscore.
    # Default is ":0"
    #StaticServers=:0
    StaticServers=:0,:1,:2
    # List of on-demand displays. See StaticServers for syntax.
    # Default is ""
    #ReserveServers=:1,:2,:3
    ReserveServers=:3
    
    .....<snip>.....
    [X-:0-Core]
    ClientLogFile=.xsession-errors
    ServerArgsLocal=-nolisten tcp -layout seat0 -sharevts -novtswitch
    
    [X-:1-Core]
    ClientLogFile=.xsession-errors
    ServerArgsLocal=-nolisten tcp -layout seat1 -sharevts -novtswitch
    
    [X-:2-Core]
    ClientLogFile=.xsession-errors
    ServerArgsLocal=-nolisten tcp -layout seat2 -sharevts -novtswitch
    Note that in each X server definition of my kdmrc, I specify a "-layout seat#" which corresponds with my ServerLayout section of xorg.conf. This is how xorg knows what hardware and settings to use in each session.

    My xorg.conf
    Code:
    # xorg.conf (X.Org X Window System server configuration file)                   
    #                                                                               
    
    Section "Monitor"
            Identifier     "2343bwx"
            Option         "dpms"   
    EndSection                      
    
    Section "Monitor"
            Identifier     "216bw"
            Option         "dpms" 
    EndSection                    
    
    Section "Monitor"
            Identifier     "viewsonic"
            Option         "dpms"     
    EndSection                        
    
    Section "Screen"
            Identifier     "screen0"
            Device         "9800gtxplus-0"
            Monitor        "2343bwx"      
            DefaultDepth    24            
            SubSection "Display"          
                    Depth       24        
            EndSubSection                 
    EndSection                            
    
    Section "Screen"
            Identifier     "screen1"
            Device         "9800gtxplus-1"
            Monitor        "216bw"        
            DefaultDepth    24            
            SubSection "Display"          
                    Depth       24        
            EndSubSection                 
    EndSection                            
    
    Section "Screen"
            Identifier     "screen2"
            Device         "9800gtxplus-2"
            Monitor        "viewsonic"    
            DefaultDepth    24            
            SubSection "Display"          
                    Depth       24        
            EndSubSection                 
    EndSection                            
    
    Section "Module"
            Load           "dbe"   # Double buffer extension
            Load           "glx"                            
            Load           "type1"                          
            Load           "speedo"                         
            Load           "freetype"                       
            SubSection "extmod"                             
                    Option         "omit xfree86-dga"   # don't initialize the DGA extension                                                                        
            EndSubSection                                                           
    EndSection                                                                      
    
    Section "InputDevice"
            Identifier     "keyboard0"
            Driver         "evdev"    
            Option         "Device" "/dev/input/by-path/pci-0000:05:02.2-usb-0:4.4:1.0-event-kbd"                                                                   
            Option         "XkbModel" "evdev"                                       
            Option         "XkbLayout" "us"                                         
    EndSection                                                                      
    
    Section "InputDevice"
            Identifier     "keyboard1"
            Driver         "evdev"    
            Option         "Device" "/dev/input/by-path/pci-0000:05:02.2-usb-0:3.2:1.0-event-kbd"                                                                   
            Option         "XkbModel" "evdev"                                       
            Option         "XkbLayout" "us"                                         
    EndSection                                                                      
    
    Section "InputDevice"
            Identifier     "keyboard2"
            Driver         "evdev"    
            Option         "Device" "/dev/input/by-path/pci-0000:05:02.2-usb-0:2.1.1:1.0-event-kbd"                                                                 
            Option         "XkbModel" "evdev"                                       
            Option         "XkbLayout" "us"                                         
    EndSection                                                                      
    
    Section "InputDevice"
            Identifier     "mouse0"
            Driver         "evdev" 
            Option         "Device" "/dev/input/by-path/pci-0000:05:02.2-usb-0:4.3:1.0-event-joystick"                                                              
    EndSection                                                                      
    
    Section "InputDevice"
            Identifier     "mouse1"
            Driver         "evdev" 
            Option         "Device" "/dev/input/by-path/pci-0000:05:02.2-usb-0:3.3:1.0-event-mouse"                                                                 
    EndSection                                                                      
    
    Section "InputDevice"
            Identifier     "mouse2"
            Driver         "evdev" 
            Option         "Device" "/dev/input/by-path/pci-0000:05:02.2-usb-0:2.4:1.0-event-mouse"                                                                 
    EndSection                                                                      
    
    Section "ServerLayout"
            Identifier     "seat0"
            Screen         "screen0" 0 0
            InputDevice    "mouse0" "CorePointer"
            InputDevice    "keyboard0" "CoreKeyboard"
            Option         "DisableModInDev" "true"
            Option         "AutoAddDevices" "off"
    EndSection
    
    Section "ServerLayout"
            Identifier     "seat1"
            Screen         "screen1" 0 0
            InputDevice    "mouse1" "CorePointer"
            InputDevice    "keyboard1" "CoreKeyboard"
            Option         "DisableModInDev" "true"
            Option         "AutoAddDevices" "off"
    EndSection
    
    Section "ServerLayout"
            Identifier     "seat2"
            Screen         "screen2" 0 0
            InputDevice    "mouse2" "CorePointer"
            InputDevice    "keyboard2" "CoreKeyboard"
            Option         "DisableModInDev" "true"
            Option         "AutoAddDevices" "off"
    EndSection
    
    Section "Device"
            Identifier     "9800gtxplus-0"
            Driver         "nvidia"
            BusID          "PCI:1:0:0"
    EndSection
    
    Section "Device"
            Identifier     "9800gtxplus-1"
            Driver         "nvidia"
            BusID          "PCI:3:0:0"
    EndSection
    
    Section "Device"
            Identifier     "9800gtxplus-2"
            Driver         "nvidia"
            BusID          "PCI:4:0:0"
    EndSection
    
    Section "ServerFlags"
            Option         "AllowMouseOpenFail" "true"
            Option         "Xinerama" "0"
            Option  "DontZap"       "True"
            # Disable ctrl alt backspace
            # Option        "DontZap"
            # Xorg will otherwise not start if it can't find a mouse to use.
            # Disable xinerama
    EndSection
    Last edited by CMorrow; 05-05-2009, 12:01 PM. Reason: Edited for clarity

    Leave a comment:


  • jamey0824
    replied
    Can't even get that far

    I've been trying to get multiseat working too, so I am trying to do it in some sort of logical steps. To bad I can't get past step 1

    I am just trying to get two video cards to work.
    System
    Asus Ma79T Delux
    2 3450 vga cards , with 2 exactly same monitors
    ubuntu x64

    Tried with fgrlx(default on ubuntu and new 9.4, radeonhd, and ati drivers

    The problem is I can never get a display from both cards working at the same time. Cmorrow or anyone can you confirm if you actually got two separate vga cards working under jaunty.

    When i use fgrlx drivers at same time get stuck at bootup. Also note that when looking Catylst control center it never recognizance 2nd card, it sees it as unknown. When I use radeonhd drivers I am able to log in but nothing on second monitor

    this is my xorg.conf
    Code:
    Section "ServerLayout"
    	Identifier     "aticonfig Layout"
    	Screen      0  "aticonfig-Screen[0]-0" 0 0
    	Screen         "aticonfig-Screen[1]-0" RightOf "aticonfig-Screen[0]-0"
    EndSection
    
    Section "Files"
    EndSection
    
    Section "Module"
    EndSection
    
    Section "Monitor"
    	Identifier   "aticonfig-Monitor[0]-0"
    	Option	    "VendorName" "ATI Proprietary Driver"
    	Option	    "ModelName" "Generic Autodetecting Monitor"
    	Option	    "DPMS" "true"
    EndSection
    
    Section "Monitor"
    	Identifier   "aticonfig-Monitor[1]-0"
    	Option	    "VendorName" "ATI Proprietary Driver"
    	Option	    "ModelName" "Generic Autodetecting Monitor"
    	Option	    "DPMS" "true"
    EndSection
    
    Section "Device"
    	Identifier  "aticonfig-Device[0]-0"
    	Driver      "fglrx"
    	BusID       "PCI:5:0:0"
    EndSection
    
    Section "Device"
    	Identifier  "aticonfig-Device[1]-0"
    	Driver      "fglrx"
    	BusID       "PCI:4:0:0"
    EndSection
    
    Section "Screen"
    	Identifier "aticonfig-Screen[0]-0"
    	Device     "aticonfig-Device[0]-0"
    	Monitor    "aticonfig-Monitor[0]-0"
    	DefaultDepth     24
    	SubSection "Display"
    		Viewport   0 0
    		Depth     24
    	EndSubSection
    EndSection
    
    Section "Screen"
    	Identifier "aticonfig-Screen[1]-0"
    	Device     "aticonfig-Device[1]-0"
    	Monitor    "aticonfig-Monitor[1]-0"
    	DefaultDepth     24
    	SubSection "Display"
    		Viewport   0 0
    		Depth     24
    	EndSubSection
    EndSection

    Leave a comment:


  • c1981
    replied
    That's too bad - I think you're right about the driver support - the switch should've made a difference if it was indeed a driver issue.
    I didn't expect a bios update to make much of a difference, as I pretty much flash the bios to latest edition on all boards I come into contact with.

    As far as it being a distribution specific issue - opensuse and centos have the same problem..
    I could try building a Linux From Scratch install to see if that makes a difference?

    It's a shame the x2 and alike cards can't be used as seperate adapters; But, Matrox adapters can. Although they do not offer any real performance besides office work, 4 quad-head matrox card can allow 'our' motherboards to drive the number of users up to 16. But Matrox cards are rather pricy in terms of performance per euro (or dollar).
    That's why I use same generation yet different series Nvidia cards for the moment; the media center seats don't require all that much 3D power - just HD video power; so I use 1 -2 high power cards for gaming purposes and 2 low to medium power cards for the media centers.
    Last edited by c1981; 04-25-2009, 02:14 PM.

    Leave a comment:

Working...
X