firewire: use in_compat_syscall to check ioctl compatness
Firewire was using is_compat_task to check whether it was in a compat ioctl or a non-compat ioctl. Use is_compat_syscall instead so it works properly on all architectures. Signed-off-by: Andy Lutomirski <luto@kernel.org> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
2bf8c47626
commit
a25045ff32
|
@ -221,7 +221,7 @@ struct inbound_phy_packet_event {
|
|||
#ifdef CONFIG_COMPAT
|
||||
static void __user *u64_to_uptr(u64 value)
|
||||
{
|
||||
if (is_compat_task())
|
||||
if (in_compat_syscall())
|
||||
return compat_ptr(value);
|
||||
else
|
||||
return (void __user *)(unsigned long)value;
|
||||
|
@ -229,7 +229,7 @@ static void __user *u64_to_uptr(u64 value)
|
|||
|
||||
static u64 uptr_to_u64(void __user *ptr)
|
||||
{
|
||||
if (is_compat_task())
|
||||
if (in_compat_syscall())
|
||||
return ptr_to_compat(ptr);
|
||||
else
|
||||
return (u64)(unsigned long)ptr;
|
||||
|
|
Loading…
Reference in New Issue
Block a user