Commit 1a78cedb authored by David S. Miller's avatar David S. Miller

sparc64: Fix D-cache flushing on swapin from SW devices.

Thanks to tip form ARM folks and Russell King.

If flush_dcache_page() occurs on a swapin it will have a mapping
and we'll try to defer the flush by setting the dirty bit.

But when it hits update_dcache_page() we won't flush because the
page won't have a mapping any more.  So remove the mapping
requirement in flush_dcache().
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent de23cf3c
...@@ -265,7 +265,7 @@ static void flush_dcache(unsigned long pfn) ...@@ -265,7 +265,7 @@ static void flush_dcache(unsigned long pfn)
struct page *page; struct page *page;
page = pfn_to_page(pfn); page = pfn_to_page(pfn);
if (page && page_mapping(page)) { if (page) {
unsigned long pg_flags; unsigned long pg_flags;
pg_flags = page->flags; pg_flags = page->flags;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment