]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
ALSA: ctl: Fix ioctls for X32 ABI
authorTakashi Iwai <tiwai@suse.de>
Sat, 27 Feb 2016 16:52:42 +0000 (17:52 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 Mar 2016 23:34:53 +0000 (15:34 -0800)
commitc223c645e9d843a5b80af8daaae6d84c512aa67e
treedc6444b3a730ae38a868fe048b805f59d04175de
parent020615e8192717e236a5bf6d162c2b35117bb4dc
ALSA: ctl: Fix ioctls for X32 ABI

commit 6236d8bb2afcfe71b88ecea554e0dc638090a45f upstream.

The X32 ABI takes the same alignment like x86-64, and this may result
in the incompatible struct size from ia32.  Unfortunately, we hit this
in some control ABI: struct snd_ctl_elem_value differs between them
due to the position of 64bit variable array.  This ends up with the
unknown ioctl (ENOTTY) error.

The fix is to add the compat entries for the new aligned struct.

Reported-and-tested-by: Steven Newbury <steve@snewbury.org.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/core/control_compat.c