[Samba] sigbus fault?

Edward Irvine at home eirvine at tpgi.com.au
Sun May 28 01:36:51 GMT 2006


Hi Folks,

I'm trying to run samba on Solaris 9. It works OK when I don't compile in kerberos and ldap, but when with those two compiled in, smbd seems to freeze (nmbd and winbindd are OK). After a bit of investigation I notice something strange in truss:


...

/1 at 1:         -> libldap-2.3:ldap_free_urldesc(0x30dfe8, 0x32e048, 0x32dfb8, 0x3
/1 at 1:           -> liblber-2.3:ber_memfree_x(0x32dfd7, 0x0, 0x0, 0x0)
/1 at 1:           -> libc:free(0x32dfd7, 0x0, 0x0, 0x0)
/1 at 1:             -> libc:_free_unlocked(0x32dfd7, 0x0, 0x0, 0xfee3c000)
/1:         Incurred fault #5, FLTACCESS  %pc = 0xFEDC7D80
/1:           siginfo: SIGBUS BUS_ADRALN addr=0x0032DFCF
                             ^^^^^^^                                                                                   /1:         Received signal #10, SIGBUS [caught]
/1:           siginfo: SIGBUS BUS_ADRALN addr=0x0032DFCF
/1 at 1:               -> libc:sigaddset(0xffbfd594, 0xa, 0x0, 0x0)
/1 at 1:                 -> libc:sigvalid(0xa, 0x0, 0x0, 0x0)
/1 at 1:                 <- libc:sigvalid() = 1
/1 at 1:               <- libc:sigaddset() = 0
/1:     sigprocmask(SIG_SETMASK, 0xFFBFD594, 0x00000000) = 0
/1 at 1:               -> libc:___errno(0x0, 0x0, 0x0, 0x0)
/1 at 1:               <- libc:___errno() = 0xfee43664
/1 at 1:               -> libc:time(0x0, 0x0, 0x0, 0x0)


...


And the same sort of thing in gdb:

(gdb) run
Starting program: /opt/Samba/samba-3.0.22-with-ADS/sbin/smbd

Program received signal SIGSEGV, Segmentation fault.
0xfedc7d80 in _free_unlocked () from /usr/lib/libc.so.1
(gdb) bt
#0  0xfedc7d80 in _free_unlocked () from /usr/lib/libc.so.1
#1  0xfedc7d38 in free () from /usr/lib/libc.so.1
#2  0xff32d848 in ldap_free_urldesc (ludp=0x30dfc0) at url.c:1481
#3  0xfebe6ed0 in __s_api_addRefInfo () from /usr/lib/libsldap.so.1
#4  0xfebea200 in proc_search_references () from /usr/lib/libsldap.so.1
#5  0xfebeac94 in search_state_machine () from /usr/lib/libsldap.so.1
#6  0xfebeb4bc in __ns_ldap_list () from /usr/lib/libsldap.so.1
#7  0xfec2ad10 in _nss_ldap_nocb_lookup () from /usr/lib/nss_ldap.so.1
#8  0xfec24868 in getbymember () from /usr/lib/nss_ldap.so.1
#9  0xfedce8f0 in nss_search () from /usr/lib/libc.so.1
#10 0xfee18d30 in _getgroupsbymember () from /usr/lib/libc.so.1
#11 0xfedc3264 in initgroups () from /usr/lib/libc.so.1
#12 0x001ab280 in getgrouplist_internals ()
#13 0x001ab528 in sys_getgrouplist ()
#14 0x001ab580 in getgroups_user ()
#15 0x001ab6cc in pdb_default_enum_group_memberships ()
#16 0x0018f22c in context_enum_group_memberships ()
#17 0x0019136c in pdb_enum_group_memberships ()
#18 0x00202d90 in get_user_groups ()
#19 0x0020317c in add_user_groups ()
#20 0x002034b8 in make_server_info_sam ()
#21 0x0020387c in make_new_server_info_guest ()
#22 0x00203a30 in init_guest_info ()
#23 0x0024e0b0 in main ()


Here is my smb.conf (I've removed the ads and kerberos stuff, but it was broken in the same way when it was included):

[global]
      server string = IT151978  Solaris
      guest account = eirvine
      log level = 3
      preferred master = No
      local master = No
      domain master = No

[homes]
      comment = Home Directories
      valid users = %S
      read only = No
      browseable = No

Here is what smbd is linked against:

ldd sbin/smbd
      libthread.so.1 =>        /usr/lib/libthread.so.1
      libldap-2.3.so.0 =>      /opt/OpenLDAP/openldap/lib/libldap-2.3.so.0
      liblber-2.3.so.0 =>      /opt/OpenLDAP/openldap/lib/liblber-2.3.so.0
      libgssapi_krb5.so.2 =>   /opt/Kerberos/krb5-1.4.3/lib/libgssapi_krb5.so.                                  2
      libkrb5.so.3 =>  /opt/Kerberos/krb5-1.4.3/lib/libkrb5.so.3
      libk5crypto.so.3 =>      /opt/Kerberos/krb5-1.4.3/lib/libk5crypto.so.3
      libkrb5support.so.0 =>   /opt/Kerberos/krb5-1.4.3/lib/libkrb5support.so.                                  0
      libcom_err.so.3 =>       /opt/Kerberos/krb5-1.4.3/lib/libcom_err.so.3
      libresolv.so.2 =>        /usr/lib/libresolv.so.2
      libsocket.so.1 =>        /usr/lib/libsocket.so.1
      libnsl.so.1 =>   /usr/lib/libnsl.so.1
      libpam.so.1 =>   /usr/lib/libpam.so.1
      libsendfile.so.1 =>      /usr/lib/libsendfile.so.1
      libdl.so.1 =>    /usr/lib/libdl.so.1
      libiconv.so.2 =>         /usr/local/lib/libiconv.so.2
       libc.so.1 =>     /usr/lib/libc.so.1
      libgen.so.1 =>   /usr/lib/libgen.so.1
      libgcc_s.so.1 =>         /opt/sfw/gcc-3/lib/libgcc_s.so.1
      libmp.so.2 =>    /usr/lib/libmp.so.2
      libcmd.so.1 =>   /usr/lib/libcmd.so.1
      /usr/platform/SUNW,Sun-Blade-100/lib/libc_psr.so.1

Any ideas of what to do next would be very much appreciated! Thanks

Eddie 


More information about the samba mailing list