From: Jinshan Xiong Date: Thu, 29 Sep 2016 21:31:01 +0000 (-0700) Subject: LU-8633 llite: do not clear uptodate bit in page delete X-Git-Tag: 2.8.60~15 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=27c079d110cc2867dc0db8452695f37c24f77215;hp=27c079d110cc2867dc0db8452695f37c24f77215;p=fs%2Flustre-release.git LU-8633 llite: do not clear uptodate bit in page delete Otherwise, if the race between page fault and truncate occurs, it will cause the page fault routine to return an EIO error. In filemap_fault() { page_not_uptodate: ... ClearPageError(page); error = mapping->a_ops->readpage(file, page); if (!error) { wait_on_page_locked(page); if (!PageUptodate(page)) error = -EIO; } ... } However, I tend to think this is a defect in kernel implementation, because it assumes PageUptodate shouldn't be cleared but file read routine doesn't make the same assumption. Signed-off-by: Jinshan Xiong Change-Id: Ic4a919607a6121098e41eaf56b8ce3200f778ecf Reviewed-on: http://review.whamcloud.com/22827 Tested-by: Maloo Tested-by: Jenkins Reviewed-by: Li Dongyang Reviewed-by: Bobi Jam Reviewed-by: Oleg Drokin ---