On Fri, 30 Jul 2021 09:19:16 +0200, Jaroslav Kysela wrote: > > On 20. 07. 21 11:26, Takashi Iwai wrote: > > The hw_support_mmap() doesn't cover all memory allocation types and > > might use a wrong device pointer for checking the capability. > > Check the all memory allocation types more completely. > > This change breaks mmap for the snd-dummy driver (fake_buffer). It seems that > we need this fix? > > diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c > index 6a2971a7e6a1..09c0e2a6489c 100644 > --- a/sound/core/pcm_native.c > +++ b/sound/core/pcm_native.c > @@ -246,7 +246,7 @@ static bool hw_support_mmap(struct snd_pcm_substream > *substream) > if (!(substream->runtime->hw.info & SNDRV_PCM_INFO_MMAP)) > return false; > > - if (substream->ops->mmap) > + if (substream->ops->mmap || substream->ops->page) > return true; > > switch (substream->dma_buffer.dev.type) { Yes, that would work. Or allowing the mmap for unknown buffer type by blindly relying to the hw.info flag. But ops->page check looks safer. Care to submit a proper patch? Thanks! Takashi