Re: [PATCH] Assert that pages being written back are locked

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Looks good.

Reviewed-by: William Kucharski <william.kucharski@xxxxxxxxxx>

> On Oct 27, 2020, at 4:46 PM, Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
> 
> From: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> 
> In write_cache_pages(), we rely on PageLock to prevent writeback from
> starting on locked pages.  I'm not sure if we document anywhere that pages
> that we're starting writes on must be locked, but having an assertion
> will make it clear to users that this is required.
> 
> Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> 
> diff --git a/mm/page-writeback.c b/mm/page-writeback.c
> index 3671568d433f..f83dd855594d 100644
> --- a/mm/page-writeback.c
> +++ b/mm/page-writeback.c
> @@ -2774,6 +2774,8 @@ int __test_set_page_writeback(struct page *page, bool keep_write)
> 	struct address_space *mapping = page_mapping(page);
> 	int ret, access_ret;
> 
> +	VM_BUG_ON_PGFLAGS(!PageLocked(page), page);
> +
> 	lock_page_memcg(page);
> 	if (mapping && mapping_use_writeback_tags(mapping)) {
> 		XA_STATE(xas, &mapping->i_pages, page_index(page));
> 






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux