summaryrefslogtreecommitdiff
path: root/security/keys
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2012-05-11 13:56:56 +0400
committerDavid Howells <dhowells@redhat.com>2012-05-11 13:56:56 +0400
commit45de6767dc51358a188f75dc4ad9dfddb7fb9480 (patch)
treefd73c68347190acb0b14ef51095d9e7d713af2d7 /security/keys
parent898bfc1d46bd76f8ea2a0fbd239dd2073efe2aa3 (diff)
downloadlinux-45de6767dc51358a188f75dc4ad9dfddb7fb9480.tar.xz
KEYS: Use the compat keyctl() syscall wrapper on Sparc64 for Sparc32 compat
Use the 32-bit compat keyctl() syscall wrapper on Sparc64 for Sparc32 binary compatibility. Without this, keyctl(KEYCTL_INSTANTIATE_IOV) is liable to malfunction as it uses an iovec array read from userspace - though the kernel should survive this as it checks pointers and sizes anyway. I think all the other keyctl() function should just work, provided (a) the top 32-bits of each 64-bit argument register are cleared prior to invoking the syscall routine, and the 32-bit address space is right at the 0-end of the 64-bit address space. Most of the arguments are 32-bit anyway, and so for those clearing is not required. Signed-off-by: David Howells <dhowells@redhat.com cc: "David S. Miller" <davem@davemloft.net> cc: sparclinux@vger.kernel.org cc: stable@vger.kernel.org
Diffstat (limited to 'security/keys')
0 files changed, 0 insertions, 0 deletions