mirror of https://github.com/torvalds/linux.git
s390/sclp_mem: Consider global memory_hotplug.memmap_on_memory setting
When the global kernel command line parameter memory_hotplug.memmap_on_memory is set to false, per-memory-block memmap_on_memory setting can still be set to true. However, when configuring memory block, add_memory_resource() would configure it without memmap_on_memory. i.e. Even if the MHP_MEMMAP_ON_MEMORY flag is set, mhp_supports_memmap_on_memory() returns false unless the kernel command line parameter "memory_hotplug.memmap_on_memory" is enabled. When both the flag and the cmdline parameter are set, the memory block can be configured with or without memmap_on_memory support. To ensure consistent behavior, permit configuring per-memory-block memmap_on_memory only when the memory_hotplug.memmap_on_memory kernel command line parameter is enabled. This is similar to commit73954d379e("dax: add a sysfs knob to control memmap_on_memory behavior") Fixes:ff18dcb19a("s390/sclp: Add support for dynamic (de)configuration of memory") Signed-off-by: Sumanth Korikkar <sumanthk@linux.ibm.com> Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
parent
8840cc4520
commit
c1287d67c3
|
|
@ -275,6 +275,8 @@ static ssize_t sclp_memmap_on_memory_store(struct kobject *kobj, struct kobj_att
|
||||||
rc = kstrtobool(buf, &value);
|
rc = kstrtobool(buf, &value);
|
||||||
if (rc)
|
if (rc)
|
||||||
return rc;
|
return rc;
|
||||||
|
if (value && !mhp_supports_memmap_on_memory())
|
||||||
|
return -EOPNOTSUPP;
|
||||||
rc = lock_device_hotplug_sysfs();
|
rc = lock_device_hotplug_sysfs();
|
||||||
if (rc)
|
if (rc)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue