lkml.org 
[lkml]   [2019]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3 20/26] compat_ioctl: remove translation for sound ioctls
    On Tue, 16 Apr 2019 22:28:05 +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@arndb.de>

    This looks like a really nice cleanup. Thanks!

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


    Takashi

    \
     
     \ /
      Last update: 2019-04-17 10:06    [W:5.434 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site