X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=mm%2Fshmem.c;h=f7ac7b812f926a24b3ba71bb4757318ab75b357b;hb=2fcc3db0ccee9b47df7a4f732e6624f4f643c035;hp=ce501bce1c2e2369959666de3923e0085112bb73;hpb=b8c475be7bf9b79e6417c08d7a921b2e8cb04258;p=powerpc.git diff --git a/mm/shmem.c b/mm/shmem.c index ce501bce1c..f7ac7b812f 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -1028,6 +1028,14 @@ repeat: page_cache_release(swappage); goto repeat; } + if (!PageSwapCache(swappage)) { + /* Page migration has occured */ + shmem_swp_unmap(entry); + spin_unlock(&info->lock); + unlock_page(swappage); + page_cache_release(swappage); + goto repeat; + } if (PageWriteback(swappage)) { shmem_swp_unmap(entry); spin_unlock(&info->lock);