Bug 456399
Summary: | New xscreensaver update aborts immediately | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Bill Crawford <billcrawford1970> | ||||||||
Component: | xscreensaver | Assignee: | Mamoru TASAKA <mtasaka> | ||||||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||
Severity: | low | Docs Contact: | |||||||||
Priority: | low | ||||||||||
Version: | 8 | CC: | jwz | ||||||||
Target Milestone: | --- | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | All | ||||||||||
OS: | Linux | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | 5.06-2.fc8 | Doc Type: | Bug Fix | ||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2008-07-29 15:26:24 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Attachments: |
|
Description
Bill Crawford
2008-07-23 11:06:16 UTC
Created attachment 312461 [details]
Log output from xscreensaver
CCing to jwz. Need a stack trace. Yeah, will try to capture a trace in a moment ... Pasting in here 'cause it's fairly short #0 0x0011e402 in __kernel_vsyscall () #1 0x00149690 in raise () from /lib/libc.so.6 #2 0x0014af91 in abort () from /lib/libc.so.6 #3 0x08051b65 in saver_exit (si=0xbf945244, status=-1, dump_core_reason=0x806aff8 "because of synchronous X Error") at ../../driver/windows.c:904 #4 0x0804d5c8 in saver_ehandler (dpy=0x99a6430, error=0xbf944de8) at ../../driver/xscreensaver.c:336 #5 0x0030e71e in _XError (dpy=0x99a6430, rep=0x99ae160) at XlibInt.c:2905 #6 0x00316263 in _XReply (dpy=0x99a6430, rep=0xbf944f10, extra=0, discard=0) at xcb_io.c:417 #7 0x0066f77b in XRRGetScreenResources (dpy=0x99a6430, window=0) at XrrScreen.c:81 #8 0x080538b3 in update_screen_layout (si=0xbf945244) at ../../driver/screens.c:386 #9 0x0804d893 in main (argc=Cannot access memory at address 0x6 ) at ../../driver/xscreensaver.c:784 #10 0x00136390 in __libc_start_main () from /lib/libc.so.6 #11 0x0804bbc1 in _start () As the error appears within XRRGetScreenResources I'm assuming this is probably a bug in libXrandr or in the X server rather than xscreensaver, feel free to reassign it if you like. I don't know how RootWindow(dpy,i) is returning 0, unless you have both A) multiple real X screens (ScreenCount > 0) and B) RANDR stuff happening at the same time. I wasn't even sure that was possible. But I can't tell whether that's the case because it died before it was able to print out a debug log of your screens and geometry. Also, update_screen_layout does not call XRRGetScreenResources, so that stack trace is garbled. I suspect you're not compiled with -g. I do indeed have multiple real X screens, and was running from a terminal on screen 1, although I wouldn't have expected that to matter ... Anyway, it appears that randr_scan_monitors() has been inlined, which gcc likes to do these days; repeated backtrace is the same. I double checked that I have the correct version of the debuginfo package installed. #0 0x0011e402 in __kernel_vsyscall () #1 0x00149690 in raise () from /lib/libc.so.6 #2 0x0014af91 in abort () from /lib/libc.so.6 #3 0x08051b65 in saver_exit (si=0xbf86f264, status=-1, dump_core_reason=0x806aff8 "because of synchronous X Error") at ../../driver/windows.c:904 #4 0x0804d5c8 in saver_ehandler (dpy=0x973e450, error=0xbf86ee08) at ../../driver/xscreensaver.c:336 #5 0x0030e71e in _XError (dpy=0x973e450, rep=0x9746188) at XlibInt.c:2905 #6 0x00316263 in _XReply (dpy=0x973e450, rep=0xbf86ef30, extra=0, discard=0) at xcb_io.c:417 #7 0x0066f77b in XRRGetScreenResources (dpy=0x973e450, window=0) at XrrScreen.c:81 #8 0x080538b3 in update_screen_layout (si=0xbf86f264) at ../../driver/screens.c:386 #9 0x0804d893 in main (argc=Cannot access memory at address 0x6 ) at ../../driver/xscreensaver.c:784 #10 0x00136390 in __libc_start_main () from /lib/libc.so.6 #11 0x0804bbc1 in _start () Lemme know if there's anything else I can do (have the exploded source here, can add printf()s or whatever tomorrow). Please build and run "test-randr" from the xscreensaver-5.06/driver/ src. Also, xdpyinfo. Also, by "real X screens" I mean you address them with $DISPLAY :0.0 and :0.1. Just because you have mutliple monitors doesn't mean you have real X screens. That's kind of the whole point of RANDR/Xinerama. (In reply to comment #10) > Please build and run "test-randr" from the xscreensaver-5.06/driver/ src. > Also, xdpyinfo. > Hi, Bill: For now I created a subpackage "xscreensaver-tests" which contains some binaries for testing like "/usr/libexec/xscreensaver/test-randr" or so. Would you try this from the following? http://kojipkgs.fedoraproject.org/packages/xscreensaver/5.06/1.fc8.1/ xdpyinfo is in xorg-x11-utils package. For Jamie: Do you want me to ship test-* binaries under driver/ directory for Fedora xscreensaver rpms from next time? No, they're separate protocol screens (.0 and .1) - I have two cards, and this way I get DRI on both heads, hence nice fast 3d screensavers :o) Created attachment 312539 [details]
Output from test-randr
The "event" I sent it was just changing the refresh rate on one screen, hence
the lack of apparent change.
Created attachment 312575 [details]
patch
Ok, I think I just fixed this -- but the other folks weren't getting crashes.
(Congratulations, I think you're the first person ever to try and use real
multi-screen on a system with randr 1.2 available...)
Jamie: you wouldn't believe how many people tell me "don't do that" ;o) Thanks for patch, building now ... ... fixed, thanks. Good news, thanks! > For Jamie:
> Do you want me to ship test-* binaries under driver/ directory for Fedora
> xscreensaver rpms
> from next time?
Nah, they're almost never needed...
xscreensaver-5.06-2.fc9 has been submitted as an update for Fedora 9 xscreensaver-5.06-2.fc8 has been submitted as an update for Fedora 8 It seems the update packages are already pushed. If the bug still exists, please feel free to reopen this bug. Thank you, Bill and Jamie. Closing. |