From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7AD5128313D; Fri, 27 Mar 2026 14:46:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=216.40.44.10 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774622769; cv=none; b=EBYCqYNY7olGmm6VtbHpRlhGdoQOvcxY8glBDsdBmLj73DF+7TVM6K2etKdb4NmEENWBqWhZrH/FvOQFoZSD+Hb04AISRrZkL89UkwP+jpbMbdSFI4K8NXJCUdvTtCTkxRTjyQ1E3HavcjTCEgT7pgklXc1qlnB3ZZfU07f+wmc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774622769; c=relaxed/simple; bh=4abyi0QFJA+ENtgPePryoxoJ/65jZXwGxdGsYQGWJ/c=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=EkNuNKejReyjGHY686ptQzwCtdRBMXYF29aOluIWz1QLGQQiGNVrCvdJ7qVDrmZtVvVhSF4967ES81g2dXMU8et/d26l4QzG5PhSDw/8iOGVnUVfl8ItUggk3EXQAVtomgaTvgGK7c4EZC8MgiiMp7LXEPP/EwGVx8tzVcmolr4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=groves.net; spf=pass smtp.mailfrom=groves.net; arc=none smtp.client-ip=216.40.44.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=groves.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=groves.net Received: from omf09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 10F391411DB; Fri, 27 Mar 2026 14:45:57 +0000 (UTC) Received: from [HIDDEN] (Authenticated sender: john@groves.net) by omf09.hostedemail.com (Postfix) with ESMTPA id F1F552003B; Fri, 27 Mar 2026 14:45:44 +0000 (UTC) Date: Fri, 27 Mar 2026 09:45:42 -0500 From: John Groves To: Jonathan Cameron Cc: John Groves , Miklos Szeredi , Dan Williams , Bernd Schubert , Alison Schofield , John Groves , Jonathan Corbet , Shuah Khan , Vishal Verma , Dave Jiang , Matthew Wilcox , Jan Kara , Alexander Viro , David Hildenbrand , Christian Brauner , "Darrick J . Wong" , Randy Dunlap , Jeff Layton , Amir Goldstein , Stefan Hajnoczi , Joanne Koong , Josef Bacik , Bagas Sanjaya , Chen Linxuan , James Morse , Fuad Tabba , Sean Christopherson , Shivank Garg , Ackerley Tng , Gregory Price , Aravind Ramesh , Ajay Joshi , "venkataravis@micron.com" , "linux-doc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "nvdimm@lists.linux.dev" , "linux-cxl@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" Subject: Re: [PATCH V9 7/8] dax: Add fs_dax_get() func to prepare dax for fs-dax usage Message-ID: References: <0100019d1d463523-617e8165-a084-4d91-aa5e-13778264d5d4-000000@email.amazonses.com> <20260324003919.5106-1-john@jagalactic.com> <0100019d1d484ddc-2487f887-7ecd-49a3-abfe-9dabec28873f-000000@email.amazonses.com> <20260324150526.000047b6@huawei.com> Precedence: bulk X-Mailing-List: linux-fsdevel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260324150526.000047b6@huawei.com> X-Rspamd-Server: rspamout07 X-Rspamd-Queue-Id: F1F552003B X-Stat-Signature: 9bfz1px3crt5gbbbqfyugqsepybdznwf X-Session-Marker: 6A6F686E4067726F7665732E6E6574 X-Session-ID: U2FsdGVkX1+2XQXA8LG1Z1gPhCVVcUDiPnAuvqEAEUE= X-HE-Tag: 1774622744-193271 X-HE-Meta: U2FsdGVkX19uXYBvOa/PdwyxV5VkzlppzyKL/FKiMhfYbCosuJ3ekwr2xWqOqHs4tqX7vVS7EiXaXpsof09wXFdRoEjmq9VNuHMhM8phOJUeE0vCyScTnyWAeORd/3AxPJ5mJHamRkQlNMfJXgl5lOO7xivNG/Mz+6ntwciRcug7cJeTCaSE+O8TRrootHB37g+aziwAwI4V4JqD8cMWsTSbOhrlBJGF3gkleT16yA7gHUOWdDDPcdoHp3DyZTHHWs081bo2h8s6Xtd+yfwPKih/8Tda1Is1l0DxR5HYGyDHF1UgsvrMc1fCY21fv56XdaaRBtMgRdPvAUXdP/g+sveuQ7Qb+x6YpXk1RHw98opI/sgNXmgTUfaZ8mNUiZjKMAH7z+VjvDkZ55zfJQ7aLVPrwKeebgq+tKC89Djw3Trjl/RgfRAQNC+84i+IGPMwtYVRBLrvSMt+sXZCrsdbXw== On 26/03/24 03:05PM, Jonathan Cameron wrote: > On Tue, 24 Mar 2026 00:39:31 +0000 > John Groves wrote: > > > From: John Groves > > > > The fs_dax_get() function should be called by fs-dax file systems after > > opening a fsdev dax device. This adds holder_operations, which provides > > a memory failure callback path and effects exclusivity between callers > > of fs_dax_get(). > > > > fs_dax_get() is specific to fsdev_dax, so it checks the driver type > > (which required touching bus.[ch]). fs_dax_get() fails if fsdev_dax is > > not bound to the memory. > > > > This function serves the same role as fs_dax_get_by_bdev(), which dax > > file systems call after opening the pmem block device. > > > > This can't be located in fsdev.c because struct dax_device is opaque > > there. > > > > This will be called by fs/fuse/famfs.c in a subsequent commit. > > > > Signed-off-by: John Groves > Hi John, > > Looks like a stray header change - see inline. > > With that tidied up. > Reviewed-by: Jonathan Cameron > > > #define dax_driver_register(driver) \ > > diff --git a/drivers/dax/super.c b/drivers/dax/super.c > > index ba0b4cd18a77..d4ab60c406bf 100644 > > --- a/drivers/dax/super.c > > +++ b/drivers/dax/super.c > > > diff --git a/include/linux/dax.h b/include/linux/dax.h > > index b19bfe0c2fd1..bf37b9a982f3 100644 > > --- a/include/linux/dax.h > > +++ b/include/linux/dax.h > > > #if IS_ENABLED(CONFIG_FS_DAX) > > +void fs_put_dax(struct dax_device *dax_dev, void *holder); > > +int fs_dax_get(struct dax_device *dax_dev, void *holder, > > + const struct dax_holder_operations *hops); > > +struct dax_device *inode_dax(struct inode *inode); > > What's this? Not used in this patch and not stubbed. > It's in drivers/dax/dax-private.h already and given I assume code builds > before this patch (and it's not used in patch 8) then presumably it doesn't > need to be here. > > I got suspicious due to the lack of stub rather indicating something differnt > form the other two. Dropped, thanks! John