Re: [PATCH v8 17/26] media/v4l2-core: set pages dirty upon releasing DMA buffers

John Hubbard
2019-12-10T05:51:26Z

On 12/9/19 4:56 PM, Andrew Morton wrote:
> On Mon, 9 Dec 2019 14:53:35 -0800 John Hubbard <jhubbard@nvidia.com> wrote:
>
>> After DMA is complete, and the device and CPU caches are synchronized,
>> it's still required to mark the CPU pages as dirty, if the data was
>> coming from the device. However, this driver was just issuing a
>> bare put_page() call, without any set_page_dirty*() call.
>>
>> Fix the problem, by calling set_page_dirty_lock() if the CPU pages
>> were potentially receiving data from the device.
>>
>> Reviewed-by: Christoph Hellwig <hch@lst.de>
>> Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
>> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
>> Cc: <stable@vger.kernel.org>
>
> What are the user-visible effects of this change?

I'll have to defer to Hans or other experts, because I merely spotted
this by reading the code.

>
> As it's cc:stable I'd normally send this to Linus within 1-2 weeks, or
> sooner. Please confirm that this is a standalone fix, independent of
> the rest of this series.
>
>

Yes, this is a stand-alone fix. Of course, as part of this series, the
put_page() gets converted to put_user_pages_dirty() in the next patch,
and that in turn gets renamed to unpin_user_pages_dirty() in a later
patch. Just so we keep that in mind when moving patches around.

thanks,
--
John Hubbard
NVIDIA