On Fri, Oct 8, 2021 at 1:53 PM Takashi Iwai <tiwai@xxxxxxx> wrote: > On Fri, 08 Oct 2021 13:45:45 +0200, Arnd Bergmann wrote: > > On Fri, Oct 8, 2021 at 1:11 PM Takashi Iwai <tiwai@xxxxxxx> wrote: > > > On Fri, 08 Oct 2021 11:24:39 +0200, Arnd Bergmann wrote: > > > The below is a revised kernel patch (again untested), just correcting > > > the behavior of 32bit compat mode. 32bit apps on 32bit kernel work > > > fine as is, as well as 64bit apps on 64bit kernel. > > > > Right, this should cover all cases of the ioctl itself misbehaving. > > In addition, we still need to disallow the mmap() interface on compat > > kernels then. Strictly speaking, we could allow the snd_pcm_mmap_status > > but not snd_pcm_mmap_control to be mapped, but I'm not sure if > > that's better than disallowing both. > > IIRC, the compat mmap is already disallowed even for the > SNDRV_PCM_MMAP_OFFSET_CONTROL_NEW (in pcm_control_mmap_allowed()), so > no need to change around that. Ah, right. I think it was meant to become allowed as part of commit 80fe7430c708 ("ALSA: add new 32-bit layout for snd_pcm_mmap_status/control"), which did allow the snd_pcm_mmap_status to be mmap()ed, but it appears to be the rare case where two mistakes cancel out and we don't have to change the mmap code. Arnd