Re: OpenLDAP 2.4.31 on FreeBSD 10.0-CURRENT/amd64 broken!

2012-05-06 Thread O. Hartmann
On 05/06/12 01:55, Dimitry Andric wrote:
> On 2012-05-05 17:54, Hartmann, O. wrote:
>> Since Friday, I have on all of our FreeBSD 10.0-CURRENT/amd64 boxes
>> massive trouble with net/openldap24-server (SASL enabled, so it is
>> openldap-sasl-server).
>>
>> Last time OpenLDAP worked was Thursday last week, when obviously a
>> problematic update to the OS was made
> 
> I managed to reproduce the segfault you are seeing in slapd, which is
> caused by a problem in libthr.so, introduced in r234947.
> 
> Please apply the attached diff, rebuild lib/libthr and install it, and
> then try your slapd tests again.  Let us know. :)
> 
> @David, can you please review this diff?  It looks like there was a
> mistake merging from Perforce, where you also moved the line:
> 
> sc = SC_LOOKUP(wchan);
> 
> to the top of the _sleepq_add() function, just before the call to
> _sleepq_lookup().  If this isn't done, sc may be uninitialized when it
> is dereferenced later on in the function.

GREAT!

Everything works perfectly as expected and in its status quo as before
the inconvenience. The problems I faced with xdm and others were due to
a configuration mistake by myself in etc/ldap.conf, which I introduced
while searching for problems.

Dimitry, my personal thank you. Seriously.

Regards,
Oliver Hartmann



signature.asc
Description: OpenPGP digital signature


Re: OpenLDAP 2.4.31 on FreeBSD 10.0-CURRENT/amd64 broken!

2012-05-05 Thread Hartmann, O.
On 05/06/12 01:55, Dimitry Andric wrote:
> On 2012-05-05 17:54, Hartmann, O. wrote:
>> Since Friday, I have on all of our FreeBSD 10.0-CURRENT/amd64 boxes
>> massive trouble with net/openldap24-server (SASL enabled, so it is
>> openldap-sasl-server).
>>
>> Last time OpenLDAP worked was Thursday last week, when obviously a
>> problematic update to the OS was made
> 
> I managed to reproduce the segfault you are seeing in slapd, which is
> caused by a problem in libthr.so, introduced in r234947.
> 
> Please apply the attached diff, rebuild lib/libthr and install it, and
> then try your slapd tests again.  Let us know. :)
> 
> @David, can you please review this diff?  It looks like there was a
> mistake merging from Perforce, where you also moved the line:
> 
> sc = SC_LOOKUP(wchan);
> 
> to the top of the _sleepq_add() function, just before the call to
> _sleepq_lookup().  If this isn't done, sc may be uninitialized when it
> is dereferenced later on in the function.
> 

Rebuild lib/libthr, installed.

Restarted slapd. slapd(8C) now starts as usual and takes queries.

BUT:

every client using ldap for authetication is now reporting an error like:

login: pam_ldap: ldap_starttls_s: Connect error

While login on console with LDAP backed users is working although, login
with the very same users on xdm fails (replace login with xdm, the error
is always the same).

I will rebuild a whole system with the patch and report in again, since
I rebuilt only libthr and installed the lib, and rebooted in the first
approach.

oh
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: OpenLDAP 2.4.31 on FreeBSD 10.0-CURRENT/amd64 broken!

2012-05-05 Thread Dimitry Andric
On 2012-05-05 17:54, Hartmann, O. wrote:
> Since Friday, I have on all of our FreeBSD 10.0-CURRENT/amd64 boxes
> massive trouble with net/openldap24-server (SASL enabled, so it is
> openldap-sasl-server).
> 
> Last time OpenLDAP worked was Thursday last week, when obviously a
> problematic update to the OS was made

I managed to reproduce the segfault you are seeing in slapd, which is
caused by a problem in libthr.so, introduced in r234947.

Please apply the attached diff, rebuild lib/libthr and install it, and
then try your slapd tests again.  Let us know. :)

@David, can you please review this diff?  It looks like there was a
mistake merging from Perforce, where you also moved the line:

sc = SC_LOOKUP(wchan);

to the top of the _sleepq_add() function, just before the call to
_sleepq_lookup().  If this isn't done, sc may be uninitialized when it
is dereferenced later on in the function.
Index: lib/libthr/thread/thr_sleepq.c
===
--- lib/libthr/thread/thr_sleepq.c	(revision 234994)
+++ lib/libthr/thread/thr_sleepq.c	(working copy)
@@ -113,11 +113,11 @@ _sleepq_add(void *wchan, struct pthread *td)
 	struct sleepqueue_chain *sc;
 	struct sleepqueue *sq;
 
+	sc = SC_LOOKUP(wchan);
 	sq = _sleepq_lookup(wchan);
 	if (sq != NULL) {
 		SLIST_INSERT_HEAD(&sq->sq_freeq, td->sleepqueue, sq_flink);
 	} else {
-		sc = SC_LOOKUP(wchan);
 		sq = td->sleepqueue;
 		LIST_INSERT_HEAD(&sc->sc_queues, sq, sq_hash);
 		sq->sq_wchan = wchan;
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Re: OpenLDAP 2.4.31 on FreeBSD 10.0-CURRENT/amd64 broken!

2012-05-05 Thread Hartmann, O.
On 05/05/12 18:34, Chris Rees wrote:
> On 5 May 2012 16:55, "Hartmann, O."  wrote:
>>
>> Hello lists.
>>
>> Since Friday, I have on all of our FreeBSD 10.0-CURRENT/amd64 boxes
>> massive trouble with net/openldap24-server (SASL enabled, so it is
>> openldap-sasl-server).
>>
>> Last time OpenLDAP worked was Thursday last week, when obviously a
>> problematic update to the OS was made - it is a wild guess, since I did
>> daily make world and by the end of the day after the last make world
>> things went worse. I'm sorry having no SVN release tag handy.
>>
>> Well, here some facts.
>>
>> 1) The update of net/openldap24-server has been performed earlier this
>> month and has been run successfully (2.4.31).
>>
>> 2) It doesn't matter whether OpenLDAP is compiled with CLANG 3.1 or
>> legacy GCC 4.2.1, compiled with CLANG, slapd(8C)  coredumps immediately,
>> compiled with gcc, it starts, but when slapd(8C) gets accessed, it
>> coredumps immediately. A simple "id ohartmann" is enough.
>>
>> 3) I recompiled OpenLDAP 2.4.31 client and server and it requisites via
>> "portmaster -f net/openldap24-server|client. No effect/success. I also
>> recompiled every port used with OpenLDAP: security/pam_ldap and
>> net/nss_ldap.
>>
>> 4) OpenLDAP server uses DB5 based backend.
>>
>> 5) The very same configuration (copied slap.d folder's .ldif files)
>> works fine on FreeBSD 9.0-STABLE/amd64, even compiled with CLANG. This
>> makes me believe this is a FreeBSD 10.0-CURRENT specific bug.
>>
>> 6) Following is a truss output of the following comand issued:
>>
>> /usr/local/libexec/slapd -d32 -o ldap -g ldap -F
>> /usr/local/etc/openldap/slapd.d :
>>
>> [...]
>> connect(8,{ AF_INET 192.168.0.128:389 },16)  ERR#61 'Connection
> refused'
>> shutdown(8,SHUT_RDWR)ERR#54 'Connection
>> reset by pee
>> r'
>> close(8) = 0 (0x0)
>> clock_gettime(13,{1336231852.0 })= 0 (0x0)
>> getpid() = 84297 (0x14949)
>> sendto(3,"<163>May  5 17:30:52 slapd[84297"...,97,0x0,NULL,0x0) = 97
> (0x61)
>>
> sigprocmask(SIG_SETMASK,SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGEMT|SIGF
>>
> PE|SIGKILL|SIGBUS|SIGSEGV|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|
>>
> SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH
>> |SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0)
>> sigaction(SIGPIPE,{ SIG_DFL SA_RESTART ss_t },{ SIG_IGN 0x0 ss_t }) = 0
>> (0x0)
>> sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0)
>> 4fa547ac ldif_read_file: checksum error on
>> "/usr/local/etc/openldap/slapd.d//cn=
>> config/olcDatabase={1}hdb.ldif"
>> 4fa547ac hdb_db_open: database "dc=walstatt,dc=dyndns,dc=org": unclean
>> shutdown
>> detected; attempting recovery.
>> 4fa547ad hdb_db_open: database "cn=accesslog": unclean shutdown
>> detected; attemp
>> ting recovery.
>> 4fa547ad slapd starting
>> SIGNAL 11 (SIGSEGV)
>> setgroups(0x1,0x802c7a000,0x802c7c001,0x,0x0,0x0) ERR#4
>> 'Interrupted sys
>> tem call'
>> process exit, rval = 0
>>
>>
>> 7) Desperately, I tried nearly every variation of the configurable
>> "overlays", even those my configuration doesn't use. But this seems
>> nonesense since OpenLDAP worked before.
>>
>> I'm floating like a dead man in the water and I was wondering if someone
>> else doesn't face this problem. FreeBSD is said to be run in large
>> environments, so at least one should have OpenLDAP as user backend
>> running ...
>>
>> I need some help in this case.
>>
> 
> Why are you running -CURRENT in production?
> 
> Chris
> ___
> freebsd-curr...@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Some has to report problems in the field and the new hardware in our
science lab benefits from some advantages in FBSD 10, at least
LLVM/CLANG 3.1.


___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: OpenLDAP 2.4.31 on FreeBSD 10.0-CURRENT/amd64 broken!

2012-05-05 Thread Chris Rees
On 5 May 2012 16:55, "Hartmann, O."  wrote:
>
> Hello lists.
>
> Since Friday, I have on all of our FreeBSD 10.0-CURRENT/amd64 boxes
> massive trouble with net/openldap24-server (SASL enabled, so it is
> openldap-sasl-server).
>
> Last time OpenLDAP worked was Thursday last week, when obviously a
> problematic update to the OS was made - it is a wild guess, since I did
> daily make world and by the end of the day after the last make world
> things went worse. I'm sorry having no SVN release tag handy.
>
> Well, here some facts.
>
> 1) The update of net/openldap24-server has been performed earlier this
> month and has been run successfully (2.4.31).
>
> 2) It doesn't matter whether OpenLDAP is compiled with CLANG 3.1 or
> legacy GCC 4.2.1, compiled with CLANG, slapd(8C)  coredumps immediately,
> compiled with gcc, it starts, but when slapd(8C) gets accessed, it
> coredumps immediately. A simple "id ohartmann" is enough.
>
> 3) I recompiled OpenLDAP 2.4.31 client and server and it requisites via
> "portmaster -f net/openldap24-server|client. No effect/success. I also
> recompiled every port used with OpenLDAP: security/pam_ldap and
> net/nss_ldap.
>
> 4) OpenLDAP server uses DB5 based backend.
>
> 5) The very same configuration (copied slap.d folder's .ldif files)
> works fine on FreeBSD 9.0-STABLE/amd64, even compiled with CLANG. This
> makes me believe this is a FreeBSD 10.0-CURRENT specific bug.
>
> 6) Following is a truss output of the following comand issued:
>
> /usr/local/libexec/slapd -d32 -o ldap -g ldap -F
> /usr/local/etc/openldap/slapd.d :
>
> [...]
> connect(8,{ AF_INET 192.168.0.128:389 },16)  ERR#61 'Connection
refused'
> shutdown(8,SHUT_RDWR)ERR#54 'Connection
> reset by pee
> r'
> close(8) = 0 (0x0)
> clock_gettime(13,{1336231852.0 })= 0 (0x0)
> getpid() = 84297 (0x14949)
> sendto(3,"<163>May  5 17:30:52 slapd[84297"...,97,0x0,NULL,0x0) = 97
(0x61)
>
sigprocmask(SIG_SETMASK,SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGEMT|SIGF
>
PE|SIGKILL|SIGBUS|SIGSEGV|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|
>
SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH
> |SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0)
> sigaction(SIGPIPE,{ SIG_DFL SA_RESTART ss_t },{ SIG_IGN 0x0 ss_t }) = 0
> (0x0)
> sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0)
> 4fa547ac ldif_read_file: checksum error on
> "/usr/local/etc/openldap/slapd.d//cn=
> config/olcDatabase={1}hdb.ldif"
> 4fa547ac hdb_db_open: database "dc=walstatt,dc=dyndns,dc=org": unclean
> shutdown
> detected; attempting recovery.
> 4fa547ad hdb_db_open: database "cn=accesslog": unclean shutdown
> detected; attemp
> ting recovery.
> 4fa547ad slapd starting
> SIGNAL 11 (SIGSEGV)
> setgroups(0x1,0x802c7a000,0x802c7c001,0x,0x0,0x0) ERR#4
> 'Interrupted sys
> tem call'
> process exit, rval = 0
>
>
> 7) Desperately, I tried nearly every variation of the configurable
> "overlays", even those my configuration doesn't use. But this seems
> nonesense since OpenLDAP worked before.
>
> I'm floating like a dead man in the water and I was wondering if someone
> else doesn't face this problem. FreeBSD is said to be run in large
> environments, so at least one should have OpenLDAP as user backend
> running ...
>
> I need some help in this case.
>

Why are you running -CURRENT in production?

Chris
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


OpenLDAP 2.4.31 on FreeBSD 10.0-CURRENT/amd64 broken!

2012-05-05 Thread Hartmann, O.
Hello lists.

Since Friday, I have on all of our FreeBSD 10.0-CURRENT/amd64 boxes
massive trouble with net/openldap24-server (SASL enabled, so it is
openldap-sasl-server).

Last time OpenLDAP worked was Thursday last week, when obviously a
problematic update to the OS was made - it is a wild guess, since I did
daily make world and by the end of the day after the last make world
things went worse. I'm sorry having no SVN release tag handy.

Well, here some facts.

1) The update of net/openldap24-server has been performed earlier this
month and has been run successfully (2.4.31).

2) It doesn't matter whether OpenLDAP is compiled with CLANG 3.1 or
legacy GCC 4.2.1, compiled with CLANG, slapd(8C)  coredumps immediately,
compiled with gcc, it starts, but when slapd(8C) gets accessed, it
coredumps immediately. A simple "id ohartmann" is enough.

3) I recompiled OpenLDAP 2.4.31 client and server and it requisites via
"portmaster -f net/openldap24-server|client. No effect/success. I also
recompiled every port used with OpenLDAP: security/pam_ldap and
net/nss_ldap.

4) OpenLDAP server uses DB5 based backend.

5) The very same configuration (copied slap.d folder's .ldif files)
works fine on FreeBSD 9.0-STABLE/amd64, even compiled with CLANG. This
makes me believe this is a FreeBSD 10.0-CURRENT specific bug.

6) Following is a truss output of the following comand issued:

/usr/local/libexec/slapd -d32 -o ldap -g ldap -F
/usr/local/etc/openldap/slapd.d :

[...]
connect(8,{ AF_INET 192.168.0.128:389 },16)  ERR#61 'Connection refused'
shutdown(8,SHUT_RDWR)ERR#54 'Connection
reset by pee
r'
close(8) = 0 (0x0)
clock_gettime(13,{1336231852.0 })= 0 (0x0)
getpid() = 84297 (0x14949)
sendto(3,"<163>May  5 17:30:52 slapd[84297"...,97,0x0,NULL,0x0) = 97 (0x61)
sigprocmask(SIG_SETMASK,SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGEMT|SIGF
PE|SIGKILL|SIGBUS|SIGSEGV|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|
SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH
|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0)
sigaction(SIGPIPE,{ SIG_DFL SA_RESTART ss_t },{ SIG_IGN 0x0 ss_t }) = 0
(0x0)
sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0)
4fa547ac ldif_read_file: checksum error on
"/usr/local/etc/openldap/slapd.d//cn=
config/olcDatabase={1}hdb.ldif"
4fa547ac hdb_db_open: database "dc=walstatt,dc=dyndns,dc=org": unclean
shutdown
detected; attempting recovery.
4fa547ad hdb_db_open: database "cn=accesslog": unclean shutdown
detected; attemp
ting recovery.
4fa547ad slapd starting
SIGNAL 11 (SIGSEGV)
setgroups(0x1,0x802c7a000,0x802c7c001,0x,0x0,0x0) ERR#4
'Interrupted sys
tem call'
process exit, rval = 0


7) Desperately, I tried nearly every variation of the configurable
"overlays", even those my configuration doesn't use. But this seems
nonesense since OpenLDAP worked before.

I'm floating like a dead man in the water and I was wondering if someone
else doesn't face this problem. FreeBSD is said to be run in large
environments, so at least one should have OpenLDAP as user backend
running ...

I need some help in this case.

Regards,
Oliver

P.S. Please set me CC, I'm not subscribing list "questions".
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"