[alsa-devel] [PATCH v2 10/17] compat_ioctl: remove translation for sound ioctls

Takashi Iwai tiwai at suse.de
Thu Sep 13 15:37:29 CEST 2018


On Wed, 12 Sep 2018 17:13:02 +0200,
Arnd Bergmann wrote:
> 
> The SNDCTL_* and SOUND_* commands are the old OSS user interface.
> 
> I checked all the sound ioctl commands listed in fs/compat_ioctl.c
> to see if we still need the translation handlers. Here is what I
> found:
> 
> - sound/oss/ is (almost) gone from the kernel, this is what actually
>   needed all the translations
> - The ALSA emulation for OSS correctly handles all compat_ioctl
>   commands already.
> - sound/oss/dmasound/ is the last holdout of the original OSS code,
>   this is only used on arch/m68k, which has no 64-bit mode and
>   hence needs no compat handlers
> - arch/um/drivers/hostaudio_kern.c may run in 64-bit mode with
>   32-bit x86 user space underneath it. This rare corner case is
>   the only one that still needs the compat handlers.
> 
> By adding a simple redirect of .compat_ioctl to .unlocked_ioctl in the
> UML driver, we can remove all the COMPATIBLE_IOCTL() annotations without
> a change in functionality. For completeness, I'm adding the same thing
> to the dmasound file, knowing that it makes no difference.
> 
> The compat_ioctl list contains one comment about SNDCTL_DSP_MAPINBUF and
> SNDCTL_DSP_MAPOUTBUF, which actually would need a translation handler
> if implemented. However, the native implementation just returns -EINVAL,
> so we don't care.
> 
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>

Looks good to me.

Reviewed-by: Takashi Iwai <tiwai at suse.de>


thanks,

Takashi


More information about the Alsa-devel mailing list