On (15/05/13 09:29), steve wrote:
>On 15/05/13 09:00, Lukas Slebodnik wrote:
>>On (14/05/13 23:42), steve wrote:
>>>On 14/05/13 23:11, Lukas Slebodnik wrote:
>>>>On (14/05/13 23:00), steve wrote:
>>>>>Hi
>>>>>with id_provider=ad, sssd exits after e.g. issuing d <user>
>>>>>It works fine with id_provider=ldap
>>>>>
>>>>>here are te errors with the ad:
>>>>>
>>>>>(Tue May 14 22:55:31 2013) [sssd[pam]] [sbus_reconnect] (0x0080):
>>>>>Making reconnection attempt 3 to
>>>>>[unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>>>(Tue May 14 22:55:31 2013) [sssd[pam]] [sbus_reconnect] (0x0080):
>>>>>Reconnected to
>>>>>[unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>>>(Tue May 14 22:55:31 2013) [sssd[pam]] [pam_dp_reconnect_init]
>>>>>(0x0020): Reconnected to the Data Provider.
>>>>>(Tue May 14 22:55:31 2013) [sssd[nss]] [sbus_reconnect] (0x0080):
>>>>>Making reconnection attempt 3 to
>>>>>[unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>>>(Tue May 14 22:55:31 2013) [sssd[nss]] [sbus_reconnect] (0x0080):
>>>>>Reconnected to
>>>>>[unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>>>(Tue May 14 22:55:31 2013) [sssd[nss]] [nss_dp_reconnect_init]
>>>>>(0x0020): Reconnected to the Data Provider.
>>>>>(Tue May 14 22:55:31 2013) [sssd[nss]] [nss_cmd_getby_dp_callback]
>>>>>(0x0040): Unable to get information from Data Provider
>>>>>Error: 3, 5, (null)
>>>>>Will try to return what we have in cache
>>>>>(Tue May 14 22:55:31 2013) [sssd[be[default]]] [be_run_online_cb]
>>>>>(0x0080): Going online. Running callbacks.
>>>>>(Tue May 14 22:55:32 2013) [sssd] [sbus_dispatch] (0x0080):
>>>>>Connection is not open for dispatching.
>>>>>(Tue May 14 22:55:32 2013) [sssd[pam]] [sbus_dispatch] (0x0020):
>>>>>Performing auto-reconnect
>>>>>(Tue May 14 22:55:32 2013) [sssd[nss]] [sbus_dispatch] (0x0020):
>>>>>Performing auto-reconnect
>>>>>(Tue May 14 22:55:32 2013) [sssd] [mt_svc_exit_handler] (0x0040):
>>>>>Child [default] terminated with signal [11]
>>>
>>>>Signal 11 is SIGSEGV and it is bad.
>>>>Could you generate a backtrace?
>>>
>>>(gdb) bt full
>>>#0  0xb7fdd416 in __kernel_vsyscall ()
>>>No symbol table info available.
>>>#1  0xb7d95f18 in epoll_wait () from /lib/i386-linux-gnu/libc.so.6
>>>No symbol table info available.
>>>#2  0xb7ee1a8a in ?? () from /usr/lib/i386-linux-gnu/libtevent.so.0
>>>No symbol table info available.
>>>#3  0xb7eddef8 in _tevent_loop_once ()
>>>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>>>No symbol table info available.
>>>#4  0xb7ede0cc in tevent_common_loop_wait ()
>>>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>>>No symbol table info available.
>>>#5  0xb7ede167 in _tevent_loop_wait ()
>>>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>>>No symbol table info available.
>>>#6  0xb7f525de in server_loop (main_ctx=0x8070490) at src/util/server.c:602
>>>No locales.
>>>#7  0x0804bd65 in main (argc=3, argv=0xbffff804) at
>>>src/monitor/monitor.c:2801
>>>        opt = <optimized out>
>>>        pc = <optimized out>
>>>        opt_daemon = 0
>>>        opt_interactive = 1
>>>        opt_version = 0
>>>
>>>How do I build to get the debugging?
>>>
>>You have debug symbols in sssd (frame #7,#6), but you don't have debug symbols
>>in library libtevent (frame #5-#2) and glibc (frame #1,#0)
>>
>>It seems that either you found bug in libteven or you did not properly 
>>generate
>>backtrace. It is litle bit tricky to debug multi process application.
>>
>>The best way, how to obtain backtrace is from core dump file.
>>
>>Core file is not generated by default. You can allow it with command:
>>
>>sh4.2# ulimit -c unlimited
>>//then you have to run sssd from the same terminal, debug level is optional in
>>//this case
>>sh4.2# sssd -i -d7
>>//perform action to reproduce bug (segfault)
>>//New file(core) should be created in current directory
>>//It is very likely, that core will be generated from sssd_be (I guess)
>>//You can check it by calling command
>>sh4.2# file ./core
>>//you can see similar output from file command
>>//./core: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from 
>>'xterm'
>>                                                                              
>> ^^^^^^^^
>>                                                   This information is 
>> important
>>                                                   name_of_segfaulted_process
>>
>>//run gdb
>>sh4.2# gdb <name_of_segfaulted_proces> ./core
>>(gdb) bt full
>>
>>LS
>
>Hi Thanks for the explanation. It was sssd_be
>
>steve@pinoso:~$ sudo file ./core
>./core: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV),
>SVR4-style, from '/usr/local/libexec/sssd/sssd_be --domain default -d
>0x00f0'
>
>steve@pinoso:~$ sudo gdb /usr/local/libexec/sssd/sssd_be ./core
>GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
>Copyright (C) 2013 Free Software Foundation, Inc.
>License GPLv3+: GNU GPL version 3 or later
><http://gnu.org/licenses/gpl.html>
>This is free software: you are free to change and redistribute it.
>There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
>and "show warranty" for details.
>This GDB was configured as "i686-linux-gnu".
>Para las instrucciones de informe de errores, vea:
><http://www.gnu.org/software/gdb/bugs/>...
>Leyendo símbolos desde /usr/local/libexec/sssd/sssd_be...hecho.
>[Nuevo LWP 27356]
>
>aviso: No se puede leer el nombre de la ruta para cargar el mapa:
>Error de entrada/salida.
>[Depuración de hilo usando libthread_db enabled]
>Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
>El núcleo se generó por «/usr/local/libexec/sssd/sssd_be --domain
>default -d 0x00f0».
>El programa terminó con la señal 11, Segmentation fault.
>#0  0xb65c3a7c in ad_subdomains_get_netlogon_done (req=0x0)
>    at src/providers/ad/ad_subdomains.c:317
>317        ret = sysdb_attrs_get_el(reply[0], AD_AT_NETLOGON, &el);
>(gdb) bt full
>#0  0xb65c3a7c in ad_subdomains_get_netlogon_done (req=0x0)
>    at src/providers/ad/ad_subdomains.c:317
>        ret = <optimized out>
>        reply_count = 0
>        reply = 0x0
>        ctx = 0x843c3f8
>        el = <optimized out>
>        blob = {data = 0x1 <Address 0x1 out of bounds>, length =
>3075350213}
>        ndr_err = <optimized out>
>        ndr_pull = 0x0
>        response = {ntver = 3077177344, data = {nt4 = {command =
>138736448,
>              pdc_name = 0x0, user_name = 0x844f370 "",
>              domain_name = 0xb769b885 
> "\213D$\034\213\070\205\377\017\205\363\376\377\377\203\304<[^_]Ð\215t&",
>nt_version = 0, lmnt_token = 60952,
>              lm20_token = 49116}, nt5 = {command = 138736448,
>pdc_name = 0x0,
>              user_name = 0x844f370 "",
>              domain_name = 0xb769b885 
> "\213D$\034\213\070\205\377\017\205\363\376\377\377\203\304<[^_]Ð\215t&",
>domain_uuid = {time_low = 0,
>                time_mid = 60952, time_hi_and_version = 49116,
>                clock_seq = "\330;", node = "ڶ@\244a\267"}, zero_uuid = {
>                time_low = 138754536, time_mid = 60968,
>                time_hi_and_version = 49116, clock_seq = "\001",
>                node = "\000\000\324\016E\b"}, forest = 0x0,
>---Type <return> to continue, or q <return> to quit---
>---Type <return> to continue, or q <return> to quit---
>              dns_domain = 0x8450ef8 "",
>              pdc_dns_name = 0xb769da50 "TALLOC_FREE_FILL",
>              pdc_ip = 0x5 <Address 0x5 out of bounds>,
>              server_type = 3067879244, nt_version = 3218927144,
>              lmnt_token = 46937, lm20_token = 46953}, nt5_ex = {
>              command = 138736448, sbz = 0, server_type = 138736496,
>              domain_uuid = {time_low = 3077159045, time_mid = 0,
>                time_hi_and_version = 0,
>                clock_seq = <incomplete sequence \356>, node = "ܿ\330;ڶ"},
>              forest = 0xb761a440 "", dns_domain = 0x84539e8 "",
>              pdc_dns_name = 0xbfdcee28 "\350\071E\b",
>              domain_name = 0x1 <Address 0x1 out of bounds>,
>              pdc_name = 0x8450ed4 "", user_name = 0x0,
>              server_site = 0x8450ef8 "",
>              client_site = 0xb769da50 "TALLOC_FREE_FILL",
>              sockaddr_size = 5 '\005', sockaddr = {
>                sockaddr_family = 3067879244,
>                pdc_ip = 0xbfdcee28 "\350\071E\b", remaining = {
>                  data = 0xb769b759 "\201çH", length = 3077177344}},
>              next_closest_site = 0x844f068 "\300\016E\b\030\370D\b
>\370D\b",
>              nt_version = 0, lmnt_token = 3832, lm20_token = 2117}}}
>        __FUNCTION__ = "ad_subdomains_get_netlogon_done"
>#1  0xb76a5043 in _tevent_req_notify_callback ()
>---Type <return> to continue, or q <return> to quit---
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#2  0xb76a51fa in _tevent_req_done ()
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#3  0xb641117a in sdap_get_generic_done (subreq=0x0)
>    at src/providers/ldap/sdap_async.c:1558
>        req = 0x844f758
>        ret = 0
>        __FUNCTION__ = "sdap_get_generic_done"
>#4  0xb76a5043 in _tevent_req_notify_callback ()
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#5  0xb76a51fa in _tevent_req_done ()
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#6  0xb64177da in sdap_get_generic_ext_done (op=0x8450430, reply=0x844f168,
>    error=0, pvt=0x844f098) at src/providers/ldap/sdap_async.c:1407
>        req = 0x844f098
>        state = <optimized out>
>        errmsg = 0x0
>        result = 0
>        ret = <optimized out>
>---Type <return> to continue, or q <return> to quit---
>        lret = <optimized out>
>        total_count = <optimized out>
>        cookie = {bv_len = 3077177344, bv_val = 0xb773a000 "P\016\a"}
>        returned_controls = 0x0
>        page_control = <optimized out>
>        __FUNCTION__ = "sdap_get_generic_ext_done"
>#7  0xb64159e1 in sdap_process_message (msg=0x8457138, ev=<optimized out>,
>    sh=<optimized out>) at src/providers/ldap/sdap_async.c:366
>        msgtype = <optimized out>
>        ret = 0
>        reply = 0x844f168
>        op = 0x8450430
>        msgid = <optimized out>
>#8  sdap_process_result (ev=<optimized out>, pvt=<optimized out>)
>    at src/providers/ldap/sdap_async.c:209
>        sh = <optimized out>
>        no_timeout = {tv_sec = 0, tv_usec = 0}
>        te = <optimized out>
>        msg = 0x8457138
>        ret = 101
>        __FUNCTION__ = "sdap_process_result"
>#9  0xb76a7b4b in ?? () from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>---Type <return> to continue, or q <return> to quit---
>#10 0xb76a3ef8 in _tevent_loop_once ()
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#11 0xb76a40cc in tevent_common_loop_wait ()
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#12 0xb76a4167 in _tevent_loop_wait ()
>   from /usr/lib/i386-linux-gnu/libtevent.so.0
>No symbol table info available.
>#13 0xb77195de in server_loop (main_ctx=0x841a788) at src/util/server.c:602
>No locales.
>#14 0x0804c423 in main (argc=5, argv=0xbfdcf304)
>    at src/providers/data_provider_be.c:2771
>        opt = <optimized out>
>        pc = <optimized out>
>        be_domain = 0x8419230 "default"
>        srv_name = <optimized out>
>        main_ctx = 0x841a788
>        confdb_path = <optimized out>
>        ret = <optimized out>
>        long_options = {{longName = 0x0, shortName = 0 '\000',
>argInfo = 4,
>            arg = 0x8085520 <poptHelpOptions@@LIBPOPT_0>, val = 0,
>            descrip = 0x8079b1b "Help options:", argDescrip = 0x0}, {
>---Type <return> to continue, or q <return> to quit---
>            longName = 0x8079b29 "debug-level", shortName = 100 'd',
>            argInfo = 2, arg = 0x8085590 <debug_level>, val = 0,
>            descrip = 0x8079b35 "Debug level", argDescrip = 0x0}, {
>            longName = 0x8079b41 "debug-to-files", shortName = 102 'f',
>            argInfo = 0, arg = 0x8085510 <debug_to_file>, val = 0,
>            descrip = 0x807b078 "Send the debug output to files
>instead of stderr", argDescrip = 0x0}, {longName = 0x8079b50
>"debug-timestamps",
>            shortName = 0 '\000', argInfo = 2,
>            arg = 0x8085500 <debug_timestamps>, val = 0,
>            descrip = 0x8079b61 "Add debug timestamps", argDescrip =
>0x0}, {
>            longName = 0x8079b76 "debug-microseconds", shortName = 0
>'\000',
>            argInfo = 2, arg = 0x8085594 <debug_microseconds>, val = 0,
>            descrip = 0x807b0ac "Show timestamps with microseconds",
>            argDescrip = 0x0}, {longName = 0x807b67c "domain",
>            shortName = 0 '\000', argInfo = 1, arg = 0xbfdcf164, val = 0,
>            descrip = 0x807b0d0 "Domain of the information provider
>(mandatory)", argDescrip = 0x0}, {longName = 0x0, shortName = 0
>'\000', argInfo = 0,
>            arg = 0x0, val = 0, descrip = 0x0, argDescrip = 0x0}}
>        __FUNCTION__ = "main"
>(gdb)
>
>
You can try patch from mail
https://lists.fedorahosted.org/pipermail/sssd-devel/2013-May/015072.html
If you are not familiar with git.
--download patch from mail.
--patch git sources (git am <path_to_patch>
--compile sssd ...

I hope, it fixes your segfault.

LS
_______________________________________________
sssd-devel mailing list
sssd-devel@lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to