FS#32315 - [xf86-video-sis] X-Window Segmentation Fault in fresh installation

Attached to Project: Arch Linux
Opened by Tomas S. Javaloyes (tsjavaloyes) - Wednesday, 31 October 2012, 08:42 GMT
Last edited by Jan de Groot (JGC) - Monday, 26 November 2012, 10:38 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Andreas Radke (AndyRTR)
Architecture i686
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No



With new installation using "Beginners' Guide" from wiki X-Window crashes showing a 'Segmentation Fault' when run test X using 'startx' command in a old laptop P4, 512 MB RAM, SiS video chipset.

Additional info:
* Using 2012.10.6 ISO
* Linux kernel 3.6.4-1
* Xorg-server 1.13.0-3
* xf86-video-sis 0.10.7-2

Steps to reproduce:
Using "Beginners' Guide steps" until X-Window test installation
This task depends upon

Closed by  Jan de Groot (JGC)
Monday, 26 November 2012, 10:38 GMT
Reason for closing:  Fixed
Comment by Tomas S. Javaloyes (tsjavaloyes) - Wednesday, 31 October 2012, 13:05 GMT

My Xorg log using wgetpaste: https://gist.github.com/3986906
Comment by U (Gusar) - Wednesday, 31 October 2012, 19:03 GMT
EXA has been broken in the SiS driver for a long time now. You didn't notice because XAA was the default before, but now XAA is gone, so the driver tries to use EXA. A bug was reported upstream but no reaction. Thomas Winischhofer, the creator of the SiS driver, stopped development years ago, so no one is around to really take care of the driver. Here's the upstream bug: https://bugs.freedesktop.org/show_bug.cgi?id=35763

Maybe you could comment on that bug, see if someone notices. Until then I suggest you switch to ShadowFB. To do so, create /etc/X11/xorg.conf.d/20-sis.conf with this:

Section "Device"
Identifier "SiS graphics"
Driver "sis"
Option "ShadowFB" "true"
Comment by Martín Cigorraga (msx) - Thursday, 01 November 2012, 18:02 GMT
I can't confirm this on a system fully up-to-date:
extra/xf86-video-sis 0.10.7-2 (xorg-drivers xorg)
extra/xf86-video-sisimedia 0.9.1-4
extra/xf86-video-sisusb 0.9.6-2
extra/xorg-server 1.13.0-3

System full info: http://i.imgur.com/D7Zju.jpg
A working FF session through a forwarded ssh X tunnel: http://i.imgur.com/8LNkn.jpg
Connection ouput: http://i.imgur.com/neODL.jpg
Comment by Tomas S. Javaloyes (tsjavaloyes) - Friday, 02 November 2012, 09:39 GMT
Hi Gusar,

Using your solution with a fresh installation following Beginners' Guide it works! Thanks...

Maintainers people of that package should put that file (20-sis.conf) by default during installation of package and the problem would be resolved. :)
Comment by U (Gusar) - Friday, 02 November 2012, 10:43 GMT
@Martin: Err, why ssh tunnel? Are you even running X locally on the machine that has SiS graphics? Your comment is confusing.

@Thomas: ShadowFB is not a solution, it's a workaround. As such, it shouldn't be the default. The proper solution is fixing the driver. I lack the knowledge to do that though. I tried diffing Winischhofer's driver with the one that shipped in X at that time, but there are too many differences between them, I couldn't see where Winischhofer's fix is. I'm attaching the diff in case someone wants to take a look. I'll play around a bit on the weekend, when I'll have access to my SiS laptop.
   sis.diff (35.3 KiB)
Comment by Martín Cigorraga (msx) - Saturday, 03 November 2012, 18:10 GMT
My bad! That was intended for other post :P
Regarding your question: yes, I can run X (locally ;) and everything works as expected, no problem here with the SiS graphics.
Let me know if there's any info you would need about my HW/SW other than what I already provided.
Comment by U (Gusar) - Sunday, 04 November 2012, 15:13 GMT
@Martin: The output of lspci -nn is what I'd like to see (the -nn is important), as well as /var/log/Xorg.0.log
Comment by Martín Cigorraga (msx) - Sunday, 04 November 2012, 19:25 GMT
~ $ lspci -nn
00:00.0 Host bridge [0600]: Silicon Integrated Systems [SiS] 671MX [1039:0671]
00:01.0 PCI bridge [0604]: Silicon Integrated Systems [SiS] AGP Port (virtual PCI-to-PCI bridge) [1039:0003]
00:02.0 ISA bridge [0601]: Silicon Integrated Systems [SiS] SiS968 [MuTIOL Media IO] [1039:0968] (rev 01)
00:02.5 IDE interface [0101]: Silicon Integrated Systems [SiS] 5513 IDE Controller [1039:5513] (rev 01)
00:03.0 USB controller [0c03]: Silicon Integrated Systems [SiS] USB 1.1 Controller [1039:7001] (rev 0f)
00:03.1 USB controller [0c03]: Silicon Integrated Systems [SiS] USB 1.1 Controller [1039:7001] (rev 0f)
00:03.3 USB controller [0c03]: Silicon Integrated Systems [SiS] USB 2.0 Controller [1039:7002]
00:04.0 Ethernet controller [0200]: Silicon Integrated Systems [SiS] 191 Gigabit Ethernet Adapter [1039:0191] (rev 02)
00:05.0 IDE interface [0101]: Silicon Integrated Systems [SiS] SATA Controller / IDE mode [1039:1183] (rev 03)
00:0f.0 Audio device [0403]: Silicon Integrated Systems [SiS] Azalia Audio Controller [1039:7502]
01:00.0 VGA compatible controller [0300]: Silicon Integrated Systems [SiS] 771/671 PCIE VGA Display Adapter [1039:6351] (rev 10)

and here is the your requested cat, hope this helps :)
Comment by U (Gusar) - Sunday, 04 November 2012, 21:55 GMT
Err, that log shows you're still using xorg-server-1.12. No wonder things work for you.
Comment by Jan de Groot (JGC) - Wednesday, 21 November 2012, 18:54 GMT
Actually this is still a bug, and not only in xf86-video-sis. We're seeing these crashes a lot in drivers that have been forced to use EXA now, and looking upstream, there's one bug that looks promising:

That bug contains a patch for xf86-video-mach64 that suffers the same problems as xf86-video-sis since the EXA conversion. It shouldn't be so hard to patch xf86-video-sis and some other drivers to get a working driver again.
Comment by Jan de Groot (JGC) - Thursday, 22 November 2012, 14:25 GMT
For anyone affected by this: please test 0.10.7-3 from extra. It disables the use of the buggy UploadToScreen/DownloadFromScreen functions. Performance will probably degrade a bit because of using software fallbacks or the scratch functions, but it should be better than using ShadowFB without acceleration at all.
Comment by Sergej Pupykin (sergej) - Saturday, 24 November 2012, 20:55 GMT
Works for me now.
Previous version had EXA related crash and I used 'Option "Accel" "false"' as workaround.
Comment by Jan de Groot (JGC) - Monday, 26 November 2012, 10:38 GMT
Thanks for testing. Now that xf86-video-sis works with this fix we can also fix all other segfauling drivers (savage, mach64, several others I guess).