Port-macppc archive

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

Re: Smoking gun: NetBSD 6.0.1 userland instability

On 18 March 2013 03:26, Donald Lee <MacPPC2%c.icompute.com@localhost> wrote:
>>On 13 March 2013 20:35, Donald Lee <MacPPC2%c.icompute.com@localhost> wrote:
>>> I tried another experiment.
>>> I fired up my NetBSD 5.2 system that ran my test case cleanly on the
>>> 6th of March.
>>> I was unable at that time to run my test case with 6.0 userland with a
>>> 5.2 kernel, but I didn't think of running a 6.0.1 kernel with the
>>> 5.2 system.
>>> Today I did that, swapping in the 6.0.1 stock kernel on the 5.2
>>> system, and ran my test case.  This is the same, clean, 5.2 system - same
>>> analog, same libraries, same everything.  Only the kernel is 6.0.1.
>>> It failed.
>>> I can say with confidence that this is a kernel problem, and one that
>>> was introduced in the transition to 6.0.1.  Since I have already tried the
>>> 6.1_RC1 kernel, I can also say with confidence that it is not yet
>>> fixed.
>>> This is a serious problem, because it is clearly corrupting data
>>> in some cases.
>>> I stand ready to help fix it if resources at my command can be of help.
>>If you have time what might be useful would be to get a rough idea of
>>when the change was introduced. I would probably suggest the
>>following, probably with the checkout & build on the fastest machine I
>>had to hand
>>- Checkout the current source tree from anoncvs at a date about midway
>>between 5.0 and 6.0
>>- run "./build.sh -m macppc tools kernel=GENERIC"
>>- If the build fails, pick another date, else test the generated version
>>- binary chop the date forward or back depending on whether the test worked :)
>>That should be able to narrow down when the problem change was introduced...
> I fetched "cvs checkout -r netbsd-5 src -P" and built it with the "./build.sh"
> above.  The build worked.  I did the build on a clean 5.2 system.
> I am happy to build some kernels.  It looks like this script puts
> the kernel in:
> /usr/obj/sys/arch/macppc/compile/GENERIC/netbsd
> I need some help with an algorithm to "chop" the source.  I don't know
> enough about the naming conventions in cvs to select dates/tags/versions
> that I can try between 5.0 and 6.0 to find the point where it starts failing.
> It would be even nicer if someone would give me some suggested labels to
> try, with some minimal knowledge of where the kernel was stable/broken,
> and where related changes must have been added.

Sorry - I didn't really provide enough detail in my original email :/

Its possible the change which is causing your issue could have been
introduced into NetBSD-current any time since the NetBSD-5.0 release
(since if it was a significant functionality change it would not have
bee pulled up into NetBSD-5.1 or 5.2). Technically it could even have
been introduced after NetBSD 5.0 was tagged and before it was
released, but thats much less likely.

So, NetBSD 5.0 was released April 2009 and we're now around March 2012.

I would probably start by running a quick test with the latest macpcc
kernel from http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/ - just to
make sure it hasn't been fixed by someone already :)

Assuming not, pick a midpoint, say Oct 2010

cvs -d anoncvs%anoncvs.netbsd.org@localhost:/cvsroot co -P -D 2010-10-01 src
(build and test the kernel)
Binary chop forward or backwards by updating the checked out tree +/- 9 months
eg: cvs up -dP -D 2010-01-01

If a given month fails to build I'd probably pick the 1st of the
previous or following month.

Each (successful build) pass should half the window, hopefully about 5
passes should narrow it down to a month.

Home | Main Index | Thread Index | Old Index