Bug 868851 - systemd-loginctl not attaching my SM501 graphics card
Summary: systemd-loginctl not attaching my SM501 graphics card
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: systemd
Version: 17
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: systemd-maint
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-10-22 09:44 UTC by Laercio de Sousa
Modified: 2012-11-21 09:30 UTC (History)
9 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2012-10-23 13:18:07 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Laercio de Sousa 2012-10-22 09:44:45 UTC
Description of problem:

I'm trying to set up a multiseat system in Fedora 17. My multiseat system has two graphics cards and two USB hubs with audio for mouse/keyboard/pendrive. My primary graphics chip is an onboard Intel 4 series and my secondary graphics card is a SiliconMotion SM501 (SysFS path under /sys/devices/pci0000:00/0000:00:1e.0/0000:00:04:01.0).

When I type "loginctl flush-devices && loginctl seat-status seat0", it only shows my primary graphics card. When I try to attach my secondary graphics card to e.g. seat1,

loginctl attach seat1 /sys/devices/pci0000:00/0000:00:1e.0/0000:00:04:01.0

it returns a "Failed to issue method call: invalid argument" error message.


Version-Release number of selected component (if applicable): Fedora 17


How reproducible: yes, it is reproducible.


Steps to Reproduce:
1. Boot in runtime level 3 (no X).
2. Run "loginctl flush-devices"
3. Run "loginctl seat-status seat0"
4. Run "loginctl attach <seat-something> /sys/devices/pci0000:00/0000:00:1e.0/0000:00:04:01.0
  
Actual results:
Step 3. Doesn't show my SM501 graphics card
Step 4. Returns a "Failed to issue method call: invalid argument" error message

Expected results:
Step 3. Shows both graphics devices (my onboard Intel one and my PCI SM501 one).
Step 4. Create a new seat attaching my sm501 card on it.

Additional info:
All other attachable devices (hubs, keyboards, mice, etc.) are fully recongizeable in loginctl

Comment 1 Laercio de Sousa 2012-10-22 16:04:11 UTC
Investigating the problem, I guess it can be related to the lack of a kernel module for SM501 frame buffer, named "sm501fb". Apparently it's not included in Fedora 17 kernel package, so I'll try to recompile my kernel with module sm501fb enabled.

I'll be back soon...

Comment 2 Lennart Poettering 2012-10-23 13:18:07 UTC
OK, closing for now, feel free to reopen when there is a real bug. Thanks.

Comment 3 Laercio de Sousa 2012-10-23 15:30:13 UTC
Well, I have rebuilt my kernel package with module sm501fb included. Now systemd-logind finds not ONE, but TWO framebuffer devices for SM501, with the following SysFS paths:

/sys/devices/pci0000:00/0000:00:1e.0/0000:00:04:01.0/sm501-fb.40/graphics/fb1 (sm501fb-crt)
/sys/devices/pci0000:00/0000:00:1e.0/0000:00:04:01.0/sm501-fb.40/graphics/fb2 (sm501fb-panel)

I can attach each of them in a separate seat with loginctl, but X fails to start on them.

I'm a little bit confused about how multiseat works with systemd-logind. My SM501 card is not so "hot-pluggable". In fact, I need no sm501fb kernel module to load a X server succesfully in my SM501 card, but I have to pass (at least) the following static configuration:

Section "Device"
    BusID "PCI:4:1:0"
    Identifier "videocard_tn502"
    Driver "siliconmotion"
    Option "VideoKey" "45000"
    Option "UseBIOS" "false"
    Option "PanelSize" "1360x768"
    Option "AccelMethod" "XAA"
EndSection

How could I pass the xorg.conf above as an argument when loading a X server in my SM501 seat?

Comment 4 Oleg Samarin 2012-11-21 09:05:51 UTC
Similar issue regarding nvidia cards:

https://bugzilla.redhat.com/show_bug.cgi?id=878605

Comment 5 Laercio de Sousa 2012-11-21 09:30:43 UTC
Oleg Samarin,

This is exactly what I need!! Thank you!!

With the SeatWithoutGraphics option, I could even set a nested-X solution (either using Xephyr or the upcoming xorg-video-nested driver) to implement multiseat with dual-head graphics cards.


Note You need to log in before you can comment on or make changes to this bug.