net/sctp: use in_compat_syscall for sctp_getsockopt_connectx3
authorAndy Lutomirski <[email protected]>
Tue, 22 Mar 2016 21:25:07 +0000 (14:25 -0700)
committerLinus Torvalds <[email protected]>
Tue, 22 Mar 2016 22:36:02 +0000 (15:36 -0700)
SCTP unfortunately has a different ABI for SCTP_SOCKOPT_CONNECTX3 for
32-bit and 64-bit callers.  Use in_compat_syscall to correctly
distinguish them on all architectures.

Signed-off-by: Andy Lutomirski <[email protected]>
Cc: Vlad Yasevich <[email protected]>
Cc: Neil Horman <[email protected]>
Cc: David Miller <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
net/sctp/socket.c

index 96e08111106f3cbae3b438bfede67958880d2af2..6f2653d86961edf2f587d52a756658bd78a97583 100644 (file)
@@ -1389,7 +1389,7 @@ static int sctp_getsockopt_connectx3(struct sock *sk, int len,
        int err = 0;
 
 #ifdef CONFIG_COMPAT
-       if (is_compat_task()) {
+       if (in_compat_syscall()) {
                struct compat_sctp_getaddrs_old param32;
 
                if (len < sizeof(param32))