# \[PATCH v3 11/14\] device-dax: ensure dev\_dax-\>pgmap is valid for dynamic devices

- From: Joao Martins \<hidden\>
- Date: 2021-07-14 19:36:42 
- List: linux-doc
- Page: https://ratatoskr.run/linux-doc/2021/07/6509823
- Thread: https://ratatoskr.run/linux-mm/2021/07/6509813/t.md

```text
Right now, only static dax regions have a valid @pgmap pointer in its
struct dev_dax. Dynamic dax case however, do not.

In preparation for device-dax compound pagemap support, make sure that
dev_dax pgmap field is set after it has been allocated and initialized.

Suggested-by: Dan Williams <redacted>
Signed-off-by: Joao Martins <redacted>
---
 drivers/dax/device.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/dax/device.c b/drivers/dax/device.c
index 0b82159b3564..6e348b5f9d45 100644
--- a/drivers/dax/device.c
+++ b/drivers/dax/device.c
@@ -426,6 +426,8 @@ int dev_dax_probe(struct dev_dax *dev_dax)
 	}
 
 	pgmap->type = MEMORY_DEVICE_GENERIC;
+	dev_dax->pgmap = pgmap;
+
 	addr = devm_memremap_pages(dev, pgmap);
 	if (IS_ERR(addr))
 		return PTR_ERR(addr);
-- 
2.17.1

```
