Messages in this thread |  | | | Date | Wed, 3 Jun 2009 23:51:33 +0800 | | From | Wu Fengguang <> | | Subject | Re: [PATCH] [13/16] HWPOISON: The high level memory error handler in the VM v3 |
| |
On Tue, Jun 02, 2009 at 02:32:25AM +0800, Andi Kleen wrote: [snip] > > > > > Clean swap cache pages can be directly isolated. A later page fault will bring > > > > > in the known good data from disk. > > > > > > > > OK, but why do you ClearPageUptodate if it is just to be deleted from > > > > swapcache anyway? > > > > > > The ClearPageUptodate() is kind of a careless addition, in the hope > > > that it will stop some random readers. Need more investigations. > > > > OK. But it just muddies the waters in the meantime, so maybe take > > such things out until there is a case for them. > > It's gone
Andi, I'd recommend to re-add ClearPageUptodate() for dirty swap cache pages. It will then make shmem_getpage() return EIO for - shmem_fault() => kill app with VM_FAULT_SIGBUS - shmem_readpage() => fail splice()/sendfile() etc. - shmem_write_begin() => fail splice()/sendfile() etc. which is exactly what we wanted. Note that the EIO here is permanent.
I'll continue to do some experiments on its normal read/write behaviors.
Thanks, Fengguang
|  |