From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Wilcox Subject: Re: [PATCH 07/10] dax: Add huge page fault support Date: Mon, 13 Jul 2015 11:33:45 -0400 Message-ID: <20150713153345.GI13681@linux.intel.com> References: <1436560165-8943-1-git-send-email-matthew.r.wilcox@intel.com> <1436560165-8943-8-git-send-email-matthew.r.wilcox@intel.com> <20150713150500.GB17075@quack.suse.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Matthew Wilcox , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org To: Jan Kara Return-path: Content-Disposition: inline In-Reply-To: <20150713150500.GB17075@quack.suse.cz> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Mon, Jul 13, 2015 at 05:05:00PM +0200, Jan Kara wrote: > So if this is a writeable fault and we race with truncate, we can leave > stale blocks beyond i_size, can't we? Ah, looking at dax_insert_mapping() > this seems to be a documented quirk of DAX mmap code. Would be worth > mentioning here as well so that people don't wonder... Thanks! - /* Guard against a race with truncate */ + /* + * If a truncate happened while we were allocating blocks, we may + * leave blocks allocated to the file that are beyond EOF. We can't + * take i_mutex here, so just leave them hanging; they'll be freed + * when the file is deleted. + */ is what I'll commit.