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

2.3 arm snafu



The current autobuilder problems with glibc are caused by a bad
interaction with kernel 2.2.  These old kernels have some
"compatibility" code in sys_llseek which attempts to detect an old ABI
convention and return an error.  (Why the syscall number wasn't just
changed I have no idea, but still.)

Unfortunately, the old ABI turns out to be indistinguishable from some
legitimate uses of the new ABI.  The code generated for llseek by
current glibc happens to trip over this check, causing any use of llseek
to fail with -EINVAL.

We could try to fudge glibc in order to perturb the generated code and
stop it tripping the kernel's "old ABI" heuristic, but this seems like a
bad way to carry on.  I think it would be better to fix kernel 2.2 by
removing this check, generate new packages, and install them on the
autobuilder.  I'm kind of swamped with other work this morning, but I
can try to set this process in train later today.  As an alternative, we
could just declare 2.2 to not be a supported arm kernel for sarge, and
try to upgrade the autobuilders to 2.4, but our previous attempts to do
the latter have ended in dismal failure.

p.



Reply to: