ext4: in ext4_dir_llseek, check syscall bitness directly

ext4 treats directory offsets differently for 32-bit and 64-bit callers.
Check the caller type using in_compat_syscall, not is_compat_task.  This
changes behavior on SPARC slightly.

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Cc: "Theodore Ts'o" <tytso@mit.edu>
Cc: Andreas Dilger <adilger.kernel@dilger.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Andy Lutomirski 2016-03-22 14:25:04 -07:00 committed by Linus Torvalds
parent 6d8bedff92
commit 121cef8f17
1 changed files with 1 additions and 1 deletions

View File

@ -285,7 +285,7 @@ static int ext4_readdir(struct file *file, struct dir_context *ctx)
static inline int is_32bit_api(void)
{
#ifdef CONFIG_COMPAT
return is_compat_task();
return in_compat_syscall();
#else
return (BITS_PER_LONG == 32);
#endif