[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260122045543.218194-6-Smita.KoralahalliChannabasappa@amd.com>
Date: Thu, 22 Jan 2026 04:55:41 +0000
From: Smita Koralahalli <Smita.KoralahalliChannabasappa@....com>
To: <linux-cxl@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<nvdimm@...ts.linux.dev>, <linux-fsdevel@...r.kernel.org>,
<linux-pm@...r.kernel.org>
CC: Ard Biesheuvel <ardb@...nel.org>, Alison Schofield
<alison.schofield@...el.com>, Vishal Verma <vishal.l.verma@...el.com>, "Ira
Weiny" <ira.weiny@...el.com>, Dan Williams <dan.j.williams@...el.com>,
Jonathan Cameron <jonathan.cameron@...wei.com>, Yazen Ghannam
<yazen.ghannam@....com>, Dave Jiang <dave.jiang@...el.com>, Davidlohr Bueso
<dave@...olabs.net>, Matthew Wilcox <willy@...radead.org>, Jan Kara
<jack@...e.cz>, "Rafael J . Wysocki" <rafael@...nel.org>, Len Brown
<len.brown@...el.com>, Pavel Machek <pavel@...nel.org>, Li Ming
<ming.li@...omail.com>, Jeff Johnson <jeff.johnson@....qualcomm.com>, "Ying
Huang" <huang.ying.caritas@...il.com>, Yao Xingtao <yaoxt.fnst@...itsu.com>,
Peter Zijlstra <peterz@...radead.org>, Greg Kroah-Hartman
<gregkh@...uxfoundation.org>, Nathan Fontenot <nathan.fontenot@....com>,
Terry Bowman <terry.bowman@....com>, Robert Richter <rrichter@....com>,
Benjamin Cheatham <benjamin.cheatham@....com>, Zhijian Li
<lizhijian@...itsu.com>, Borislav Petkov <bp@...en8.de>, Smita Koralahalli
<Smita.KoralahalliChannabasappa@....com>, Tomasz Wolski
<tomasz.wolski@...itsu.com>
Subject: [PATCH v5 5/7] dax: Introduce dax_cxl_mode for CXL coordination
Introduce dax_cxl_mode to coordinate between dax_cxl and dax_hmem when
handling CXL tagged memory ranges.
This patch defines the dax_cxl_mode enum and establishes a default policy.
Subsequent patches will wire this into dax_cxl and dax_hmem to decide
whether CXL tagged memory ranges should be deferred, registered or
dropped.
No functional changes.
Signed-off-by: Smita Koralahalli <Smita.KoralahalliChannabasappa@....com>
---
drivers/dax/bus.c | 3 +++
drivers/dax/bus.h | 8 ++++++++
2 files changed, 11 insertions(+)
diff --git a/drivers/dax/bus.c b/drivers/dax/bus.c
index fde29e0ad68b..72bc5b76f061 100644
--- a/drivers/dax/bus.c
+++ b/drivers/dax/bus.c
@@ -24,6 +24,9 @@ DECLARE_RWSEM(dax_region_rwsem);
*/
DECLARE_RWSEM(dax_dev_rwsem);
+enum dax_cxl_mode dax_cxl_mode = DAX_CXL_MODE_DEFER;
+EXPORT_SYMBOL_GPL(dax_cxl_mode);
+
#define DAX_NAME_LEN 30
struct dax_id {
struct list_head list;
diff --git a/drivers/dax/bus.h b/drivers/dax/bus.h
index cbbf64443098..a40cbbf1e26b 100644
--- a/drivers/dax/bus.h
+++ b/drivers/dax/bus.h
@@ -41,6 +41,14 @@ struct dax_device_driver {
void (*remove)(struct dev_dax *dev);
};
+enum dax_cxl_mode {
+ DAX_CXL_MODE_DEFER,
+ DAX_CXL_MODE_REGISTER,
+ DAX_CXL_MODE_DROP,
+};
+
+extern enum dax_cxl_mode dax_cxl_mode;
+
int __dax_driver_register(struct dax_device_driver *dax_drv,
struct module *module, const char *mod_name);
#define dax_driver_register(driver) \
--
2.17.1
Powered by blists - more mailing lists