Xorg crashes on startup with "Segmentation fault at address 0x0"

Arthur Chance freebsd at qeng-ho.org
Sat Mar 25 10:13:49 UTC 2017


On 24/03/2017 19:20, list at museum.rain.com wrote:
> I'm running FreeBSD 11-STABLE on a Dell 7010 with an AMD Radeon graphics
> card.
> 
> I recently did a 'pkg upgrade' of kde4, xorg, and dependendents:
> 
> pkg upgrade -fR ....
> 
> I can no longer start an X server, due to a segmentation fault error on
> X startup.  The Xorg.0.log is below.  At this point I am simply trying
> to start the X server by running /usr/local/bin/X.  I am not yet to the
> point of trying to use startx/startkde to bring up the KDE environment.
> 
> I'd like to find out why X is crashing.  I am not using an xorg.conf file.
> 
> hald and dbus are running:
> 
> 
> jimsdesk : 12:09:32 /home/jim> sockstat | egrep 'hal|dbus'
> root     hald-addon 1085  3  stream -> /var/run/hald/dbus-WzON4ronXi
> root     hald-addon 1085  4  stream -> /var/run/dbus/system_bus_socket
> root     hald-addon 1070  3  stream -> /var/run/hald/dbus-WzON4ronXi
> root     hald-runne 1052  3  stream -> /var/run/hald/dbus-HgZp7GfEaE
> haldaemon hald      1051  9  stream /var/run/hald/dbus-WzON4ronXi
> haldaemon hald      1051  10 stream -> /var/run/dbus/system_bus_socket
> haldaemon hald      1051  11 stream /var/run/hald/dbus-HgZp7GfEaE
> haldaemon hald      1051  14 stream /var/run/hald/dbus-HgZp7GfEaE
> haldaemon hald      1051  47 stream -> /var/run/devd.pipe
> haldaemon hald      1051  48 stream /var/run/hald/dbus-WzON4ronXi
> haldaemon hald      1051  49 stream /var/run/hald/dbus-WzON4ronXi
> polkitd  polkitd    914   9  stream -> /var/run/dbus/system_bus_socket
> root     console-ki 912   7  stream -> /var/run/dbus/system_bus_socket
> root     console-ki 912   9  stream -> /var/run/dbus/system_bus_socket
> messagebus dbus-daemo680  3  stream /var/run/dbus/system_bus_socket
> messagebus dbus-daemo680  8  stream -> ??
> messagebus dbus-daemo680  9  stream -> ??
> messagebus dbus-daemo680  10 stream /var/run/dbus/system_bus_socket
> messagebus dbus-daemo680  11 dgram  -> /var/run/log
> messagebus dbus-daemo680  12 stream /var/run/dbus/system_bus_socket
> messagebus dbus-daemo680  13 stream /var/run/dbus/system_bus_socket
> messagebus dbus-daemo680  14 stream /var/run/dbus/system_bus_socket
> messagebus dbus-daemo680  15 stream /var/run/dbus/system_bus_socket
> 
> 
> The pciconf output showing my graphics card is also below.
> 
> Where can i find the "end of the string" to start untangling this problem?
> Please let me know if I can provide additional diagnostics.
> 
> I am subscribed to the digest version, so if you will kindly Cc: me
> directly on your reply, I will receive it sooner.
> 
> Thank you!
> 
> Jim
> 
> 
> 
> Script started on Fri Mar 24 11:40:00 2017
> Command: bash -l
> Any user that is a member of the wheel group can use "su -" to simulate
> a root login. You can add a user to the wheel group by editing /etc/group.
> 		-- Konstantinos Konstantinidis <kkonstan at duth.gr>
> jimsdesk : 11:40:00 /home/jim> kldstat | tee before
> Id Refs Address            Size     Name
>  1   29 0xffffffff80200000 1f1e930  kernel
>  2    1 0xffffffff82221000 1fddd4   zfs.ko
>  3    1 0xffffffff8241f000 9a7c     opensolaris.ko
>  4    1 0xffffffff82429000 36a0     ums.ko
>  5    2 0xffffffff8242d000 23247    ipfw.ko
>  6    1 0xffffffff82451000 5221     ipdivert.ko
>  7    1 0xffffffff82457000 422d3    linux.ko
>  8    2 0xffffffff8249a000 7685     linux_common.ko
>  9    1 0xffffffff824a2000 3cc94    linux64.ko
> jimsdesk : 11:40:06 /home/jim> X
> 
> X.Org X Server 1.18.4
> Release Date: 2016-07-19
> X Protocol Version 11, Revision 0
> Build Operating System: FreeBSD 11.0-RELEASE-p8 amd64 
> Current Operating System: FreeBSD jimsdesk 11.0-STABLE FreeBSD 11.0-STABLE #0 r315874: Thu Mar 23 16:29:00 PDT 2017     root at jimsdesk:/usr/obj/usr/src/sys/GENERIC amd64
> Build Date: 16 March 2017  02:08:05AM
>  
> Current version of pixman: 0.34.0
> 	Before reporting problems, check http://wiki.x.org
> 	to make sure that you have the latest version.
> Markers: (--) probed, (**) from config file, (==) default setting,
> 	(++) from command line, (!!) notice, (II) informational,
> 	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
> (==) Log file: "/var/log/Xorg.0.log", Time: Fri Mar 24 11:40:10 2017
> (==) Using default built-in configuration (39 lines)
> (II) [KMS] Kernel modesetting enabled.
> scfb trace: probe start
> scfb trace: probe done
> (EE) 
> (EE) Backtrace:
> (EE) 0: /usr/local/bin/X (OsInit+0x38a) [0x5abfba]
> (EE) 1: /lib/libthr.so.3 (_pthread_sigmask+0x502) [0x802dacbb2]
> (EE) 2: /lib/libthr.so.3 (_pthread_getspecific+0xeaf) [0x802dacb5f]
> (EE) 3: ? (?+0xeaf) [0x7ffffffffeb2]
> (EE) 4: /usr/local/llvm39/lib/libLLVM-3.9.so (_ZN4llvm13StringMapImpl15LookupBucketForENS_9StringRefE+0xc9) [0x8096c0319]
> (EE) 5: /usr/local/llvm39/lib/libLLVM-3.9.so (LLVMParseCommandLineOptions+0x7cf) [0x80968497f]
> (EE) 6: /usr/local/llvm39/lib/libLLVM-3.9.so (LLVMParseCommandLineOptions+0x92c) [0x809684c1c]
> (EE) 7: /usr/local/llvm39/lib/libLLVM-3.9.so (_ZN4llvm2cl6Option11addArgumentEv+0x7c) [0x809678dec]
> (EE) 8: /usr/local/llvm35/lib/libLLVM-3.5.so (_ZN4llvm32createPPCTargetTransformInfoPassEPKNS_16PPCTargetMachineE+0xb92) [0x80e664752]
> (EE) 9: /usr/local/llvm35/lib/libLLVM-3.5.so (LLVMInitializeARMTargetInfo+0x112) [0x80e66a094]
> (EE) 10: /usr/local/llvm35/lib/libLLVM-3.5.so (_init+0xe) [0x80d7e25e4]
> (EE) 11: ? (_rtld_is_dlopened+0x14f7) [0x800819f77]
> (EE) 12: ? (dlopen+0x18d) [0x800815e9d]
> (EE) 13: /usr/local/lib/libgbm.so.1 (gbm_surface_has_free_buffers+0xf1d) [0x807bf55dd]
> (EE) 14: /usr/local/lib/libgbm.so.1 (gbm_surface_has_free_buffers+0xbfb) [0x807bf506b]
> (EE) 15: /usr/local/lib/libgbm.so.1 (gbm_surface_has_free_buffers+0x11a) [0x807bf39ca]
> (EE) 16: /usr/local/lib/libgbm.so.1 (gbm_create_device+0x39) [0x807bf3629]
> (EE) 17: /usr/local/lib/xorg/modules/libglamoregl.so (glamor_egl_init+0x82) [0x8079c7542]
> (EE) 18: /usr/local/lib/xorg/modules/drivers/radeon_drv.so (_init+0x53252) [0x806dab682]
> (EE) 19: /usr/local/lib/xorg/modules/drivers/radeon_drv.so (_init+0x45bd5) [0x806d90395]
> (EE) 20: /usr/local/bin/X (InitOutput+0xa7f) [0x47f35f]
> (EE) 21: /usr/local/bin/X (remove_fs_handlers+0x38b) [0x43b48b]
> (EE) 22: /usr/local/bin/X (_start+0x17f) [0x42506f]
> (EE) 23: ? (?+0x17f) [0x80083917f]
> (EE) 
> (EE) Segmentation fault at address 0x0
> (EE) 
> Fatal server error:
> (EE) Caught signal 11 (Segmentation fault). Server aborting
> (EE) 
> (EE) 
> Please consult the The X.Org Foundation support 
> 	 at http://wiki.x.org
>  for help. 
> (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
> (EE) 
> (EE) Server terminated with error (1). Closing log file.
> Abort trap
> jimsdesk : 11:40:13 /home/jim> kldstat | tee after
> Id Refs Address            Size     Name
>  1   62 0xffffffff80200000 1f1e930  kernel
>  2    1 0xffffffff82221000 1fddd4   zfs.ko
>  3    1 0xffffffff8241f000 9a7c     opensolaris.ko
>  4    1 0xffffffff82429000 36a0     ums.ko
>  5    2 0xffffffff8242d000 23247    ipfw.ko
>  6    1 0xffffffff82451000 5221     ipdivert.ko
>  7    1 0xffffffff82457000 422d3    linux.ko
>  8    2 0xffffffff8249a000 7685     linux_common.ko
>  9    1 0xffffffff824a2000 3cc94    linux64.ko
> 10    1 0xffffffff824df000 122b18   radeonkms.ko
> 11    1 0xffffffff82602000 543fe    drm2.ko
> 12    4 0xffffffff82657000 2725     iicbus.ko
> 13    1 0xffffffff8265a000 1c61     iic.ko
> 14    1 0xffffffff8265c000 1e6c     iicbb.ko
> 15    1 0xffffffff8265e000 18c2     radeonkmsfw_CAICOS_pfp.ko
> 16    1 0xffffffff82660000 1cbb     radeonkmsfw_CAICOS_me.ko
> 17    1 0xffffffff82662000 133a     radeonkmsfw_BTC_rlc.ko
> 18    1 0xffffffff82664000 655c     radeonkmsfw_CAICOS_mc.ko
> jimsdesk : 11:40:33 /home/jim> diff before after
> 2c2
> <  1   29 0xffffffff80200000 1f1e930  kernel
> ---
>>  1   62 0xffffffff80200000 1f1e930  kernel
> 10a11,19
>> 10    1 0xffffffff824df000 122b18   radeonkms.ko
>> 11    1 0xffffffff82602000 543fe    drm2.ko
>> 12    4 0xffffffff82657000 2725     iicbus.ko
>> 13    1 0xffffffff8265a000 1c61     iic.ko
>> 14    1 0xffffffff8265c000 1e6c     iicbb.ko
>> 15    1 0xffffffff8265e000 18c2     radeonkmsfw_CAICOS_pfp.ko
>> 16    1 0xffffffff82660000 1cbb     radeonkmsfw_CAICOS_me.ko
>> 17    1 0xffffffff82662000 133a     radeonkmsfw_BTC_rlc.ko
>> 18    1 0xffffffff82664000 655c     radeonkmsfw_CAICOS_mc.ko
> 

Use "pkg info -x llvm" to see if you have two versions of llvm present.
If you do, delete the older one. Because of the way some X drivers are
linked you can end up with two llvm runtime systems being used by X and
one of them isn't initialised properly and crashes in calls to the
pthread library, which seems to be what's happening here.

If it's not that, I'm afraid someone else will have to help.

-- 
By June 1949, people had begun to realize that it was not so easy to
get a program right as had at one time appeared. It was on one of my
journeys between the EDSAC room and the punching equipment that the
realization came over me with full force that a good part of the
remainder of my life was going to be spent in finding errors in my own
programs.

	-- Maurice Wilkes


More information about the freebsd-questions mailing list