diff options
author | David Howells <dhowells@redhat.com> | 2012-02-24 18:01:27 +0100 |
---|---|---|
committer | Willy Tarreau <w@1wt.eu> | 2012-03-17 11:14:49 +0100 |
commit | f30c620b9f629115de4f3f171c7df46efb4e4b04 (patch) | |
tree | d22f6362c19d93c553030808ba781770e5d1f9a0 | |
parent | 70e74484c247680dbd8f9128044223b4257b4c65 (diff) | |
download | lwn-f30c620b9f629115de4f3f171c7df46efb4e4b04.tar.gz lwn-f30c620b9f629115de4f3f171c7df46efb4e4b04.zip |
KEYS: Enable the compat keyctl wrapper on s390x
commit 1d057720609ed052a6371fe1d53300e5e6328e94 upstream.
Enable the compat keyctl wrapper on s390x so that 32-bit s390 userspace can
call the keyctl() syscall.
There's an s390x assembly wrapper that truncates all the register values to
32-bits and this then calls compat_sys_keyctl() - but the latter only exists if
CONFIG_KEYS_COMPAT is enabled, and the s390 Kconfig doesn't enable it.
Without this patch, 32-bit calls to the keyctl() syscall are given an ENOSYS
error:
[root@devel4 ~]# keyctl show
Session Keyring
-3: key inaccessible (Function not implemented)
Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: dan@danny.cz
Cc: Carsten Otte <cotte@de.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: linux-s390@vger.kernel.org
Cc: stable@vger.kernel.org
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
-rw-r--r-- | arch/s390/Kconfig | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 43c0acad7160..aca7fff3fe77 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig @@ -188,6 +188,9 @@ config SYSVIPC_COMPAT depends on COMPAT && SYSVIPC default y +config KEYS_COMPAT + def_bool y if COMPAT && KEYS + config AUDIT_ARCH bool default y |