From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2977FC48286 for ; Wed, 31 Jan 2024 02:38:18 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 697A66B0074; Tue, 30 Jan 2024 21:38:17 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 647D46B0083; Tue, 30 Jan 2024 21:38:17 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 510B16B0085; Tue, 30 Jan 2024 21:38:17 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 3EEA86B0083 for ; Tue, 30 Jan 2024 21:38:17 -0500 (EST) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id D6C69140286 for ; Wed, 31 Jan 2024 02:38:16 +0000 (UTC) X-FDA: 81738046992.23.B734E43 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by imf21.hostedemail.com (Postfix) with ESMTP id 6D2341C000B for ; Wed, 31 Jan 2024 02:38:13 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=CJvi0xyh; dmarc=pass (policy=quarantine) header.from=fromorbit.com; spf=pass (imf21.hostedemail.com: domain of david@fromorbit.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=david@fromorbit.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1706668693; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=N09f6sJYKv0DgOi8MMLVMh039rU6+gfv4wN0Iyy6R6U=; b=5Pb1IT/H0lbD1eV2AeOVTjfja1eZvePKlFpp8B49aLTwbFlCeLB2zBOdFq8zws4rR+CYze zk9otAUvzlbREujYiDcxZsYi2qDwMHui5Na+QS4AIngmV03SzRGV2DYKJfO0Ha4pTNME7/ 9M+3oUzZuznqay1H+Ep9Qc/Hejyi15Q= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=CJvi0xyh; dmarc=pass (policy=quarantine) header.from=fromorbit.com; spf=pass (imf21.hostedemail.com: domain of david@fromorbit.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=david@fromorbit.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1706668693; a=rsa-sha256; cv=none; b=fhWVfRGowwS8jsSLlpc5vGvmltgTrxcbQWbyP/DfILMNyiXshQVIZhx+sSxT3haXRI8gi7 02WzJ679sqA6Y6v7yOBcxwyuBsNmcrvyZhmD1xCJ2JcE6Kn2E+TbdkKWILAkiyvcJFHbTF /xxzSESgHFVozeNtXG9YtbQ6HmKK14A= Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-1d8dc0172d7so16501395ad.1 for ; Tue, 30 Jan 2024 18:38:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fromorbit-com.20230601.gappssmtp.com; s=20230601; t=1706668692; x=1707273492; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=N09f6sJYKv0DgOi8MMLVMh039rU6+gfv4wN0Iyy6R6U=; b=CJvi0xyh1yVp4E1n46qX3vQ9Y5MLmQAG1vBg00LxrusbOEsNC+9W4LJWfybOVKdFPh vpaqcMlHlVsRpvGrrInp44aSrNdMF7rRLS4JV63fFmBtYbyy1MdxnSNvkXZ4Eq4BYoBO sRxgZmN0HhnC1NVgoOm2tRZaD6tzlCFZjedE/T5JlklsjKtu6YOQOtjXR+XLFfw7cHP7 daIayFJN6RwC3MP/A5HX0uhLh4QIhhYSlL2ilOGe7a7a+5+ST3CQ1iPXW3V0/O8wTU77 iKkRsPwnthaA809Brf6yWZuAZui7KBxdUJMk4fR2AIlHof8xxoEliBnlZfN2UuaXBQbC SgPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706668692; x=1707273492; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=N09f6sJYKv0DgOi8MMLVMh039rU6+gfv4wN0Iyy6R6U=; b=LLo6CRrGPqQD3oRMfe35T9z3GN3fBR5JllwXGDTFEMOqwYtZ1Im6QJKjoLPbDIix7E MwrA7vdlG822OxKaXPZyp0LiXqQJMuu5V6a6tZIKyjazSfaWfEx4gklo/c7GhCKNFEhX 6qwg4Ad5nxYYz+Yh/AOvMFMfV68c2q/O+HxTM4uY1FGbOyD2yBkDJRcl09X9fV5TgbCj hE3XkvykeCM1YxtEa8UPeTZDoeMIEUy4Q49O4KFIDfTByKBaTVX5wPOoBTAvYbDfdht6 +JPeS8+XS63TBTC6Qf3MKns73HS38p0Lp6FvUardJCHhcLDSNKP2w8XthgTvNYkFI5rX WLPQ== X-Gm-Message-State: AOJu0Yw/z9JwHJ7l4agc2CQuVp+zkPED0/ZOhhzak1xEEATnSp4WwClO LU+KFxEAY9jEWmJTulaacTSJCZ6m+yq/cpurRI/q+qMY62jifzYg8vQZ++a3mHQ= X-Google-Smtp-Source: AGHT+IF3nqKBEWVvci4SEZHcSu5GXkVElPYZJQUjCfKrIEylC/tWBpIZMu1aOQe1t168W5NNY8DKnw== X-Received: by 2002:a17:902:ea0a:b0:1d7:199:cfc5 with SMTP id s10-20020a170902ea0a00b001d70199cfc5mr484297plg.117.1706668692197; Tue, 30 Jan 2024 18:38:12 -0800 (PST) Received: from dread.disaster.area (pa49-181-38-249.pa.nsw.optusnet.com.au. [49.181.38.249]) by smtp.gmail.com with ESMTPSA id b4-20020a170902d88400b001d706e373a9sm7935517plz.292.2024.01.30.18.38.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Jan 2024 18:38:11 -0800 (PST) Received: from dave by dread.disaster.area with local (Exim 4.96) (envelope-from ) id 1rV0UL-00HZeK-17; Wed, 31 Jan 2024 13:38:09 +1100 Date: Wed, 31 Jan 2024 13:38:09 +1100 From: Dave Chinner To: Mathieu Desnoyers Cc: Dan Williams , Vishal Verma , Dave Jiang , linux-kernel@vger.kernel.org, Andrew Morton , Linus Torvalds , linux-mm@kvack.org, linux-arch@vger.kernel.org, Matthew Wilcox , Arnd Bergmann , Russell King , nvdimm@lists.linux.dev, linux-cxl@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: Re: [RFC PATCH v2 1/8] dax: Introduce dax_is_supported() Message-ID: References: <20240130165255.212591-1-mathieu.desnoyers@efficios.com> <20240130165255.212591-2-mathieu.desnoyers@efficios.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240130165255.212591-2-mathieu.desnoyers@efficios.com> X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 6D2341C000B X-Stat-Signature: 4rrbmqfsm5yh3q1c1smcjadqfsgoo9xo X-HE-Tag: 1706668693-582869 X-HE-Meta: U2FsdGVkX1/Xw8Bj0fruz77R7USt2vsaieAM0CqUVPvOZCbFzHA35TuvsYXhJCdIie6vMjMWYD2XfZUIpbiZ3oKcIWR+U27nElDAz1rDmnhEaJ+kijKJ8lkklM7FLgzku5ZVinDlFvTbv1u8LHoemHEZrdngaVOWkdu+LAsSXpGDB0kNAwDvT+2xPsJfvqIxOQ+5e/+aXcp9233CjdFmE68BtbDu2Ns/ZaIgXAarPLOBfyHR6x7XXsqrbJTVIRO7vxTJBasiT/Y8UlxxrXT9rPGMYYFEa56QY1vYpKPboRL1HkCeXBJqHbHvziHVFX1cXCG7+uh2QGchc2RVUyjtaUwftaKBvVvAr+pcbDGYNDcOrranp/iUF8yrdlL/el0XbLtZWE/Qm4vy6ThFZ7TwI8rd6torBCI3dL6vCEN14//vlOeo6QtGBTHDfzMEqF3v3/PBlvJu3WHyjeIVmoodFQTDJPd9Rb1QgrnQTWOPq7sRFLVgtyDpZp2kLtEucAJbbggLPVvziEcQujGzMqRHcGPyUNtcUbv+M5SiKXS8oO+oa8bDy9ud85/9Ea3A6PouF0DdSVJ5QBn4YRjJi5pUlyPP7w2GS0nzjf8lCvy9wZy5HWnxdGqlYUWWkQM72kaD4YhXGCzPqUFU1y2yYoD0/l9GH85pbr0L52e+rKBTwQ9Rn89D6auOjmXpXNHWG+obNeeGyNPVXubV1+aIjxHCkGiGgc87mzWiSkjNCJt4a1itxEshpMIQ9O4ksSfjIYctZe7eVVjAKWAKoatHueZ0J9a3yRAaRsw1eiZkLQk2SwcGxId2wMKvU0F3iHP9oOd4Lqz5DsTZXTmoTfd7MiXOh5ILYTUb7n+ljyljnqBWLHzF1WXz/bZNvKZEWPSJQFeMMGu5DZb/7RQT3pyl/FV6hJk5vzJCrpfVkvXldl5RJoL9wTMU7WA+BLSC12d6PJ9f7/97tAx+/2iPPzyHKLY Fsy9H2ng tBTo2vrmN6ky/Duz9IiosYabHc9yi7cwMaJ1WsMLXXiCWb8EgW8Q9WS0icJEBTOElDikYV2KQaNOzSXpK+Jx/Zx1x195N6Y78z6vhvfxNlyYTR6L1z71jyOvdsCsPOgX5Xv77rA5AH2GdY9AzI463isUys6rC0BXE6U+tqdK+fG1kVJW0HM48bC2FFvnqKJVDhdvRD0960YR4nIFXIV8VH9MnsC1jbSjo8viWuHpaJwN85XGxR/U6PXSMmvwbOFJzBhZ3Cj9meMi9kn+4lQbWTGNvWmLvu2YAQKHFt7nNeI9C/W6diooiJ9rOHZD9a3toFbqx5c5RN+MHwfgHjeyA1yU3EEkgqdnaeyfD+NXhQRum6EcahKCX/o149GD3yycWbiB+U0BGS6OnfBrcmD5bztIsvWodEpZ70m0NPwOF27l9PBnPF9zNpH3GkN9bUaa2w6dscFaZbNFI9C3i5kTKWibuOVGSRKE5HWgGmglzQdRFzH6aCyQsd72BvJYlANK3qzkt91sdKVviLn3oEWkmEKYQypuZA2HKKtw4lCj+jDVWhvoul0opQua9AzZBjD4IxeiJcL7/O92mdoXD53v2aDmFUfR9Qzt6h7XykOeWAodSza0QmEmXDtbkdKReUu4/HSKT5kVacrN2iSELEx/tosCFGP9BoV2r4Dkfer+B1snCvkZ/fwjO7Hc7YqRWRdtDZZ6NeKM4atY5NWUqe20qODhPSiLDXmMEwBghNVu/aQXqTE5Z3IfFefg5cuGWFtMUisjdH92TkyGZxovGDuac5+GMkSIk3KpJKiRBu0x97MQX8T3UknOBsfutl2VWNF9ze2MO0cujUrFYAtE/mVD3IlTHEomYPMAdi2gRlxdzpjegOmGxAKPYvlDsvQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, Jan 30, 2024 at 11:52:48AM -0500, Mathieu Desnoyers wrote: > Introduce a new dax_is_supported() static inline to check whether the > architecture supports DAX. > > This replaces the following fs/Kconfig:FS_DAX dependency: > > depends on !(ARM || MIPS || SPARC) > > This is done in preparation for its use by each filesystem supporting > the dax mount option to validate whether dax is indeed supported. > > This is done in preparation for using dcache_is_aliasing() in a > following change which will properly support architectures which detect > dcache aliasing at runtime. > > Fixes: d92576f1167c ("dax: does not work correctly with virtual aliasing caches") > Signed-off-by: Mathieu Desnoyers > Cc: Andrew Morton > Cc: Linus Torvalds > Cc: linux-mm@kvack.org > Cc: linux-arch@vger.kernel.org > Cc: Dan Williams > Cc: Vishal Verma > Cc: Dave Jiang > Cc: Matthew Wilcox > Cc: Arnd Bergmann > Cc: Russell King > Cc: nvdimm@lists.linux.dev > Cc: linux-cxl@vger.kernel.org > Cc: linux-fsdevel@vger.kernel.org > --- > fs/Kconfig | 1 - > include/linux/dax.h | 10 ++++++++++ > 2 files changed, 10 insertions(+), 1 deletion(-) > > diff --git a/fs/Kconfig b/fs/Kconfig > index 42837617a55b..e5efdb3b276b 100644 > --- a/fs/Kconfig > +++ b/fs/Kconfig > @@ -56,7 +56,6 @@ endif # BLOCK > config FS_DAX > bool "File system based Direct Access (DAX) support" > depends on MMU > - depends on !(ARM || MIPS || SPARC) > depends on ZONE_DEVICE || FS_DAX_LIMITED > select FS_IOMAP > select DAX > diff --git a/include/linux/dax.h b/include/linux/dax.h > index b463502b16e1..cfc8cd4a3eae 100644 > --- a/include/linux/dax.h > +++ b/include/linux/dax.h > @@ -78,6 +78,12 @@ static inline bool daxdev_mapping_supported(struct vm_area_struct *vma, > return false; > return dax_synchronous(dax_dev); > } > +static inline bool dax_is_supported(void) > +{ > + return !IS_ENABLED(CONFIG_ARM) && > + !IS_ENABLED(CONFIG_MIPS) && > + !IS_ENABLED(CONFIG_SPARC); > +} Uh, ok. Now I see what dax_is_supported() does. I think this should be folded into fs_dax_get_by_bdev(), which currently returns NULL if CONFIG_FS_DAX=n and so should be cahnged to return NULL if any of these platform configs is enabled. Then I don't think you need to change a single line of filesystem code - they'll all just do what they do now if the block device doesn't support DAX.... -Dave. -- Dave Chinner david@fromorbit.com