On Tue, Aug 15, 2023 at 09:01:13PM +0200, Takashi Iwai wrote: > - if (copy_from_user(get_dma_ptr(substream->runtime, channel, hwoff), > - (void __user *)buf, bytes)) > + if (!copy_from_iter(get_dma_ptr(substream->runtime, channel, hwoff), > + bytes, iter)) The former is "if not everything got copied", the latter - "if nothing got copied"; the same goes for other places like that.