On Sunday 09 October 2005 14:06, Blaisorblade wrote:
> On Sunday 09 October 2005 07:54, Rob Landley wrote:
> > When attempting to stat a nonexistent file, 2.6.11 returned a consistent
> > value in st_mode (BFFFF73C, every time), and 2.6.13 is returning random
> > crap that varies from invocation to invocation.  Hence the intermittent
> > failure.
> >
> > We _should_ be checking the error return value from lstat64() before
> > looking at S_ISDIR(), and I'll fix it.  Almost certainly, the value in
> > there is random garbage off the stack, and 2.6.13 simply has different
> > random garbage on the stack.
> >
> > So it's not your problem...
>
> Just to be sure: UML _does_ return an error code from lstat64, right? If
> not, complain again please.

Yeah, it does.  UML is ok.  The check was missing in busybox (I checked in a 
fix to -devel last night, I'll clean it up in 1.0.2 when I release that later 
this week).

The fixed version lasted over 1000 iterations of my testcase, whereas the 
previous version usually barfed somewhere in the first couple dozen.  Looks 
good.

Rob

P.S. Apparently, busybox's not checking the return value bug was in there for 
22 months (introduced in revision 8006, Nov 27, 2003, long before the 1.0 
release) without ever causing a problem.  Go figure.  And even now it only 
manifests under uclibc (not glibc), and even _then_ it's highly intermittent.

And you wonder why I'm working on an automated regression test suite in my 
Copious Free Time (tm)?


-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

Reply via email to