linux-mips
[Top] [All Lists]

syscall wrapper changes cause llseek failure

To: linux-mips@linux-mips.org
Subject: syscall wrapper changes cause llseek failure
From: dann frazier <dannf@dannf.org>
Date: Mon, 23 Mar 2009 21:01:33 -0600
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.5.16 (2007-06-11)
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


<Prev in Thread] Current Thread [Next in Thread>
  • syscall wrapper changes cause llseek failure, dann frazier <=