Re: Commit 085219f79cad broke Sparc-32 back in 2.6.28.

From: Rob Landley
Date: Sun Feb 21 2010 - 21:03:57 EST


On Sunday 21 February 2010 18:28:20 Bartlomiej Zolnierkiewicz wrote:
> On Monday 22 February 2010 12:57:19 am David Miller wrote:
> > From: Rob Landley <rob@xxxxxxxxxxx>
> > Date: Sun, 21 Feb 2010 10:25:09 -0600
> >
> > > 085219f79cad89291699bd2bfb21c9fdabafe65f is first bad commit
> > > commit 085219f79cad89291699bd2bfb21c9fdabafe65f
> > > Author: Sam Ravnborg <sam@xxxxxxxxxxxx>
> > > Date: Fri Jan 2 18:47:34 2009 -0800
> > >
> > > sparc32: use proper types in struct stat
> > >
> > > Like sparc64 use proper types in struct stat
> > >
> > > Signed-off-by: Sam Ravnborg <sam@xxxxxxxxxxxx>
> > > Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
> > >
> > > This commit breaks stat and makes sparc32 essentially unusable. It
> > > changes the size of the various types in stat.h, and means that if you
> > > "mount -t tmpfs /tmp /tmp" and then try to ls /tmp, ls dies with a
> > > memory allocation error.
> > >
> > > I've confirmed that reverting it fixes the problem.
> >
> > Thanks for tracking this down Rob, I'll work on a fix and
> > push it around.
>
> Looking at how whole sparc32 has been apparently broken for over a year now
> because of a purely cleanup patch I wonder if it would be appropriate to
> make sparc32 into 'legacy only' and provide 'a stability promise' for it?
>
> Just an idea.. ;)

Actually, the problem is that lots of people seem to expect current kernels to
be broken on non-x86 targets, so they keep using old versions. (In the case
of the debian release everybody kept pointing me to on "but it works fine!"
grounds, a 2.6.18 kernel.) Lots of them only upgrade once idiots like me have
gone across the minefield and made it safe. :)

"Current is always broken so nobody uses current" != "nobody uses this
platform". More "sparc people use distros rather than building their own
systems from source, and tend not to be aggressive about upgrading".

Back in 2007 arm was broken for me for two or three releases (according to my
blog it broke in 2.6.20 and the patch that fixed it (
http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=4454/1 ) was
not yet in 2.6.22-rc7. That doesn't mean arm isn't widely used, just that
nobody with that hardware was seriously trying to use the current version of
the kernel.

My Firmware LInux project is working on implementing automated regression
testing under QEMU. Once I've got a platform working (which sparc wasn't
until now) I can provide much more prompt breakage reports in future, at least
for the basic stuff like this...

Rob
--
Latency is more important than throughput. It's that simple. - Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/