Bug#521016: [mips] llseek regression introduced by syscall wrapping
Package: linux-2.6
Version: 2.6.26-13lenny2
Severity: critical
Note - this bug affects upstream 2.6.29 as well, but I believe the
Debian 2.6.28 packages are ok (the mips-specific changes for
CVE-2009-0029 happened later).
----- Forwarded message from dann frazier <dannf@dannf.org> -----
Date: Mon, 23 Mar 2009 21:01:32 -0600
From: dann frazier <dannf@dannf.org>
To: linux-mips@linux-mips.org
Subject: syscall wrapper changes cause llseek failure
hey,
I had a report today of a possible regression caused by the syscall
wrapper changes. On a pristine 64-bit 2.6.29-rc8 kernel, llseek seems
to always return -EINVAL. This was noticed on one of the Debian
infrastructure machines where, after an upgrade, e2fsck began failing
with errors like:
Error reading block 524290 (Invalid argument) while getting next inode
from scan. Ignore error<y>?
I believe this is due to the syswrapper changes because its easy to
reproduce with Debian's 2.6.26 patched w/ the syswrapper changes, but
goes away if we back the syswrapper changes back out.
I compared strace output between a working and failing kernel:
no syscall wrappers:
_llseek(3, 2147491840, [2147491840], SEEK_SET) = 0
_llseek(3, 2147524608, [2147524608], SEEK_SET) = 0
syscall wrappers:
_llseek(3, 2147491840, 0x7fa5d7f0, SEEK_SET) = -1 EINVAL (Invalid argument)
_llseek(3, 2147491840, 0x7fa5d6d0, SEEK_SET) = -1 EINVAL (Invalid argument)
config is available here;
http://dannf.org/mips.config
--
dann frazier
----- End forwarded message -----
--
dann frazier
Reply to: