From: John Groves Clear pgmap->vmemmap_shift for static DAX devices. When rebinding a static device from device_dax (which may set vmemmap_shift based on alignment) to fsdev_dax, the stale vmemmap_shift persists on the shared pgmap. Explicitly zero it before devm_memremap_pages() so the vmemmap is built for order-0 folios as fsdev requires. Fixes: d5406bd458b0a ("dax: add fsdev.c driver for fs-dax on character dax") Reviewed-by: Dave Jiang Reviewed-by: Alison Schofield Signed-off-by: John Groves --- drivers/dax/fsdev.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/dax/fsdev.c b/drivers/dax/fsdev.c index f315533b299e9..dbd722ed7ab05 100644 --- a/drivers/dax/fsdev.c +++ b/drivers/dax/fsdev.c @@ -237,6 +237,7 @@ static int fsdev_dax_probe(struct dev_dax *dev_dax) } pgmap = dev_dax->pgmap; + pgmap->vmemmap_shift = 0; } else { size_t pgmap_size; -- 2.53.0