[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: hamm freeze



>>>>> Anders Hammarquist writes:

>>>>> - glibc        a new release is available for testing
>>>> 
>>>> I don't know if it's a problem with initgroups() or
>>>> getgroups(), but I get "cespedes root" when using `groups' (it should
>>>> be just "cespedes").  Does anyone else suffer this?
>> 
>>> Same here. It appears to be at least affecting initgroups, since I do
>>> get permissions for the root group (even though I'm not listed in it).
>> 
>> I can't reproduce this with neither libc-980220 nor libc-980311 on intel.
>> 
>> What's your entry in /etc/nsswitch.conf for groups?  Are you using
>> nscd (NSS Caching Daemon)?

Anders> group: db files

Anders> no nscd.
I guess that the bug disappears if you remove `db'.  With db I get
some rather strange output:

First with "group: files"
$ id ck
uid=517(ck) gid=100(users) groups=10(wheel),14(uucp),100(users)

And now with "group: db files"
aj@arthur: 18:12:28 ~ 
$ id ck
uid=517(ck) gid=100(users) groups=0((¶p@(¶p@:root),10(wheel),14(),100(),10(),14(),100()

I'll look into this one and try to come up with a patch.  For the
moment I'd advise to remove `db'.  Please tell me if you see a
similiar effect.


>> On which libc version is this sparc release based?

Anders> It's based on the 980301 snapshot.


>>> I'm also having problems with programs dying with SIGFPE when trying
>>> to do floating point math. I haven't looked in to exactly what it
>>> affects yet, but it was the cause of the perl errors I spoke about
>>> yesterday.
>> Did your glibc pass the test math/test-fenv without any failures?

Anders> It had 11 failures (missed it when I ran the tests earlier). Output
Anders> follows.

Anders> Regards,
Anders> /Anders

I've removed everything except the failures:
Anders> Test: feraiseexcept (FE_ALL_EXCEPT) raises all exceptions
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_DIVBYZERO: set flag, with rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_DIVBYZERO: clear flag, leave rest set
Anders>   Pass: Exception "DIVBYZERO" is not set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_INVALID: set flag, with rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_INVALID: clear flag, leave rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is not set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_INEXACT: set flag, with rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_INEXACT: clear flag, leave rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is not set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_UNDERFLOW: set flag, with rest not set
Anders>   Pass: Exception "DIVBYZERO" is not set
Anders>   Pass: Exception "INVALID" is not set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is not set
Anders> Test: Set/Clear FE_UNDERFLOW: set flag, with rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_OVERFLOW: set flag, with rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is set
Anders> Test: Set/Clear FE_OVERFLOW: clear flag, leave rest set
Anders>   Pass: Exception "DIVBYZERO" is set
Anders>   Pass: Exception "INVALID" is set
Anders>   Pass: Exception "INEXACT" is set
Anders>   Fail: Exception "UNDERFLOW" is not set
Anders>   Pass: Exception "OVERFLOW" is not set

There's something wrong. FE_UNDERFLOW is never set.  Could you try to
figure out what is wrong?  The code is be in fraiseexcpt.c
(sysdeps/sparc/fpu/fraiseexcpt.c) - or in the way the flag is checked
for (ftestexcept.c).  It might also be the FE_UNDERFLOW has the wrong
value - or the CPU doesn't report it :-(.  Sorry, I can't help you
with this and hope you find it yourself.

The program uses a lot of floating point exections - so SIGFPE should
have occured already.  The segfault might be something different but I 
don't have a clue at the moment.

Andreas
-- 
 Andreas Jaeger   aj@arthur.rhein-neckar.de    jaeger@informatik.uni-kl.de
  for pgp-key finger ajaeger@alma.student.uni-kl.de


--
E-mail the word "unsubscribe" to debian-sparc-request@lists.debian.org
TO UNSUBSCRIBE FROM THIS MAILING LIST. Trouble?  E-mail to listmaster@debian.org .


Reply to: