From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Morton Date: Fri, 3 Feb 2017 15:20:54 -0800 Subject: [Cluster-devel] [PATCH] mm: Avoid returning VM_FAULT_RETRY from ->page_mkwrite handlers In-Reply-To: <20170203150729.15863-1-jack@suse.cz> References: <20170203150729.15863-1-jack@suse.cz> Message-ID: <20170203152054.6ee9f8a920e6d0ac8a93d2b9@linux-foundation.org> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On Fri, 3 Feb 2017 16:07:29 +0100 Jan Kara wrote: > Some ->page_mkwrite handlers may return VM_FAULT_RETRY as its return > code (GFS2 or Lustre can definitely do this). However VM_FAULT_RETRY > from ->page_mkwrite is completely unhandled by the mm code and results > in locking and writeably mapping the page which definitely is not what > the caller wanted. Fix Lustre and block_page_mkwrite_ret() used by other > filesystems (notably GFS2) to return VM_FAULT_NOPAGE instead which > results in bailing out from the fault code, the CPU then retries the > access, and we fault again effectively doing what the handler wanted. I'm not getting any sense of the urgency of this fix. The bug *sounds* bad? Which kernel versions need fixing?