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

Bug#753099: glibc FTBFS on alpha: test suite failures



On Tue, Jul 01, 2014 at 04:02:55PM +1200, Michael Cree wrote:
> On Mon, Jun 30, 2014 at 11:02:24PM +0200, Aurelien Jarno wrote:
> > On Sun, Jun 29, 2014 at 09:53:30PM +1200, Michael Cree wrote:
> > > Source: glibc
> > > Version: 2.19-4
> > > Severity: important
> > > User: debian-alpha@lists.debian.org
> > > Usertags: alpha
> > > Justification: Fails to build from source but built in the past.
> > > 
> > > Finally the fixed gcc-4.8 arrived, however the rebuild of glibc on alpha
> > > failed with unexpected test suite failures.  From the log:
> > >
> > > Encountered regressions that don't match expected failures (debian/testsuite-checking/expected-results-alpha-linux-gnu-libc):
> > > badsalttest.out, Error 1
> > 
> > This one looks might be worrying, as it might affect the crypt()
> > function, and thus safety of passwords. Do you have more details about
> > the failure.
> 
> It's one of the string functions reading one byte passed the end
> of the string.  The badsalttest very carefully places a short
> checksum at the very end of a page and marks the next page of
> memory as invalid and the string function used in the bad salt
> test (I've forgotten which one it was now) reads one byte too far.
> So the worst it can do is result in a spurious segmentation
> violation.

Ok, find then.

> > > test-double.out, Error 1
> > > test-float.out, Error 1
> > > test-snan.out, Error 1
> > 
> > I guess these three are actually due to the new FP tests that have been
> > added in 2.19, so it should be relatively fine ignoring them, though it
> > might be a good idea to confirm that. 
> 
> Interestingly these pass fine in the alphaev67 libc test suite.  The
> difference between libc6.1 and libc6.1-alphaev67 is the use of extra
> CPU instructions such as the byte-word extension and the extra floating
> point instructions for efficient conversion of integer to float and back.
> Oh, there might be a special square-root instruction introduced too IIRC.  

The thing to remember there is that the alphaev67 flavour is consider by
the glibc build script as a cross-build, so some of the tests are not
run. I don't know if it is the case there.

> > > tst-backtrace2.out, Error 1
> > > tst-backtrace3.out, Error 1
> > > tst-backtrace4.out, Error 1
> > > tst-backtrace5.out, Error 1
> > > tst-backtrace6.out, Error 1
> > 
> > I don't think having the backtrace function working is something
> > critical for a system, so yes they can be ignored. It might be
> > interesting to see what caused them to stop working though.
> 
> Once again they pass in the build of libc6.1-alphaev67 but not in
> libc6.1.  Maybe something about the byte-word extension?

Adam Conrad told me he has an idea about a patch to backport for this,
but it seems he contacted you privately about that.

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net


Reply to: