Messages in this thread | | | From | David Howells <> | Subject | Re: [PATCH] VM: Fix the gfp_mask in invalidate_complete_page2 | Date | Tue, 10 Oct 2006 10:43:30 +0100 |
| |
Trond Myklebust <Trond.Myklebust@netapp.com> wrote:
> - if (PagePrivate(page) && !try_to_release_page(page, 0)) > + if (PagePrivate(page) && !try_to_release_page(page, GFP_KERNEL))
This can't be the right way to fix things. try_to_release_page() may fail whatever GFP flags you give it. If the page *must* be invalidated at this point then you _must_ call the invalidatepage() op, not the releasepage() op.
What is currently there allows an instikill to take place on a page at this point, but defers the kill on pages that are busy until all the pages have been scanned once, thus giving I/O time to happen on busy pages whilst reaping pages that can be made immediately available.
David - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |