summaryrefslogtreecommitdiff
path: root/drivers/hv/Kconfig
diff options
context:
space:
mode:
authorVinayak Menon <vinmenon@codeaurora.org>2016-03-10 17:32:01 +0530
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-25 16:03:35 -0700
commit2e21911abee5189cb1ccb2bb8bd9d093e6cc3c3d (patch)
treed745b2f3032ad28edce3776b03c1494cf570b00e /drivers/hv/Kconfig
parent4eace7df06d891a5ee709b51d75428e7c10a178c (diff)
mm: do not activate swap write failed pages
Sometime back a piece of code was added to activate pages in pageout which failed to writeback. This was done for the case of failed write to zram, with the intention of reducing further zram writes. But this does not make much sense because there can anyway be other pages which the reclaim path can pick to swap out. And this particular logic has a problem. When a write fails, the page is unlocked. Its locked again before activating the page, but the page which is now in swapcache can be brought back with its original mapping through a fault, which can happen during this period. This can result in random bugs, for e.g. when shrink_page_list try to do try_to_free_swap. Here is one such case. In this case PageSwapCache was cleared by the fault path. " zram: Error allocating memory for compressed page: 91433, size=4096 Write-error on swap-device (254:0:731464) page:de866e80 count:3 mapcount:1 mapping:d5368941 index:0xb2ce5 flags: 0x80018(uptodate|dirty|swapbacked) page dumped because: VM_BUG_ON_PAGE(!PageSwapCache(page)) " CRs-Fixed: 988207 Change-Id: I26738d0f8dd3e2dfdb24c25edac24a7d968eeba0 Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
Diffstat (limited to 'drivers/hv/Kconfig')
0 files changed, 0 insertions, 0 deletions