Debian Testing, LDAP Directory, Kernel general protection errors

I am using the current Debian Testing as a distribution tree and have recently updated the system. Since that last update I continue regularly receiving the following errors:

Jan 31 10:18:19 lila kernel: [ 44.844774] exim4[3153] general protection eip:b785f4ec esp:bfba2ff8 error:0
Jan 31 10:18:42 lila kernel: [ 67.911708] apache2[3583] general protection eip:b7bf44ec esp:bfe746b8 error:0

Something seems to make apache2 and exim4 to sigfault after that particular update and I do suspect that it has something to do with libldap2 libnss-ldap and libpam-ldap and in general with daemons or programs which need to fetch user data from my ldap directory which otherways seems to work correctly.

I found that related topic (http://forums.suselinuxsupport.de/index.php?showtopic=47584&pid=205292&st=0&#entry205292) posted a long time ago and tried rebuilding my ldap database but it didn't help.

Something interesting is that even the Segmentation Fault notice daemons startup and keep working and there doesn’t seem to be any problem with the apache2 but as it comes to exim4 those segfault errors seems to bring some confusion while delivering mail to remote smtp servers and even after successful delivery the messages remain frozen within the exim4 spool.

So if you guys have any ideas or suggestions your help is appreciated.

~Cheers~

0

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Debian Testing, LDAP

This looks suspiciously like memory allocation/access problems. One possible fault is bad memory (did you run 'memtest' ?) but in this situation, with those kernel faults, I'd say it's far more likely to be bugs in the code. You may have something to gain by compiling a kernel to test with; enable the various debugging goodies and see if the output helps to narrow down the problems.

Debian Testing, LDAP

[root@lila:~#]dpkg -S /usr/sbin/sendmail
exim4-daemon-heavy: /usr/sbin/sendmail
[root@lila:~#]gdb sendmail
GNU gdb 6.6.90.20070912-debian
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
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 "i486-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/sbin/sendmail
[Thread debugging using libthread_db enabled]
[New Thread 0xb746c6b0 (LWP 16991)]
Exim is a Mail Transfer Agent. It is normally called by Mail User Agents,
not directly from a shell command line. Options and/or arguments control
what it does when called. For a list of options, see the Exim documentation.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb746c6b0 (LWP 16991)]
0xb78324ec in free () from /lib/libc.so.6
(gdb) bt
#0 0xb78324ec in free () from /lib/libc.so.6
#1 0xb73fa1aa in ber_memfree_x (p=0x0, ctx=0x0) at /build/buildd/openldap2.3-2.4.7/libraries/liblber/memory.c:152
#2 0xb7428b14 in ldap_int_destroy_global_options () at init.c:457
#3 0xb740a590 in __do_global_dtors_aux () from /usr/lib/libldap_r-2.4.so.2
#4 0xb743727c in _fini () from /usr/lib/libldap_r-2.4.so.2
#5 0xb7f032cf in _dl_fini () from /lib/ld-linux.so.2
#6 0xb77f0ec4 in exit () from /lib/libc.so.6
#7 0xb77d9458 in __libc_start_main () from /lib/libc.so.6
#8 0x0804e981 in _start ()
(gdb) continue
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb)

All the problems started after the new libldap was installed (libldap-2.4-2) which was needed due to slapd upgrade in the testing branch.

Haven't found the problem yet, though it seems to me that there is something wrong with libldap-2.4-2 which causes the problems with exim4 and apache2 :(

~Cheers~

Debian Testing, LDAP

Finally after spending last 10 hours investigating the problem, searching in the middle of nowhere, I have replaced libnss-ldap with libnss-ldapd which as per documentation is a fork from the original libnss-ldap and it solved the problem.

During the upgrade of my testing debian distro the version of my libnss-ldap was upgraded from libnss-ldap 258-1 to 258-1+b1 which as stated within the changelog is rebuild against the new libldap-2.4-2 but it caused that nasty problem.

Now I don’t have much time to dig deeper (within the libnss-ldap source code) into the problem but within the next few days I’ll try to locate the actual code error which caused it and will publish a bug report for the corresponding package’s maintainer.

~Cheers~

Syndicate content