Alexander Potapenko wrote: > (+ Dan Williams) > (resending with patch context included) > > On Mon, Jul 11, 2022 at 6:27 PM Marco Elver <elver@xxxxxxxxxx> wrote: > > > > On Fri, 1 Jul 2022 at 16:23, Alexander Potapenko <glider@xxxxxxxxxx> wrote: > > > > > > KMSAN adds extra metadata fields to struct page, so it does not fit into > > > 64 bytes anymore. > > > > Does this somehow cause extra space being used in all kernel configs? > > If not, it would be good to note this in the commit message. > > > I actually couldn't verify this on QEMU, because the driver never got loaded. > Looks like this increases the amount of memory used by the nvdimm > driver in all kernel configs that enable it (including those that > don't use KMSAN), but I am not sure how much is that. > > Dan, do you know how bad increasing MAX_STRUCT_PAGE_SIZE can be? Apologies I missed this several months ago. The answer is that this causes everyone creating PMEM namespaces on v6.1+ to lose double the capacity of their namespace even when not using KMSAN which is too wasteful to tolerate. So, I think "6e9f05dc66f9 libnvdimm/pfn_dev: increase MAX_STRUCT_PAGE_SIZE" needs to be reverted and replaced with something like: diff --git a/drivers/nvdimm/Kconfig b/drivers/nvdimm/Kconfig index 79d93126453d..5693869b720b 100644 --- a/drivers/nvdimm/Kconfig +++ b/drivers/nvdimm/Kconfig @@ -63,6 +63,7 @@ config NVDIMM_PFN bool "PFN: Map persistent (device) memory" default LIBNVDIMM depends on ZONE_DEVICE + depends on !KMSAN select ND_CLAIM help Map persistent memory, i.e. advertise it to the memory ...otherwise, what was the rationale for increasing this value? Were you actually trying to use KMSAN for DAX pages?