aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hildenbrand <[email protected]>2020-04-06 20:07:20 -0700
committerLinus Torvalds <[email protected]>2020-04-07 10:43:40 -0700
commitefc978ad0e05ed6401c7854811750bf55b67f4b9 (patch)
treea6f963bf5a554f0a32127b6ae69b5f3f4b88a47c
parent956f8b445061667c3545baa24778f890d1d522f4 (diff)
drivers/base/memory: map MMOP_OFFLINE to 0
Historically, we used the value -1. Just treat 0 as the special case now. Clarify a comment (which was wrong, when we come via device_online() the first time, the online_type would have been 0 / MEM_ONLINE). The default is now always MMOP_OFFLINE. This removes the last user of the manual "-1", which didn't use the enum value. This is a preparation to use the online_type as an array index. Signed-off-by: David Hildenbrand <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Reviewed-by: Wei Yang <[email protected]> Reviewed-by: Baoquan He <[email protected]> Acked-by: Michal Hocko <[email protected]> Acked-by: Pankaj Gupta <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Oscar Salvador <[email protected]> Cc: "Rafael J. Wysocki" <[email protected]> Cc: Wei Yang <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Cc: Eduardo Habkost <[email protected]> Cc: Haiyang Zhang <[email protected]> Cc: Igor Mammedov <[email protected]> Cc: "K. Y. Srinivasan" <[email protected]> Cc: Michael Ellerman <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Stephen Hemminger <[email protected]> Cc: Vitaly Kuznetsov <[email protected]> Cc: Wei Liu <[email protected]> Cc: Yumei Huang <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Linus Torvalds <[email protected]>
-rw-r--r--drivers/base/memory.c11
-rw-r--r--include/linux/memory_hotplug.h2
2 files changed, 5 insertions, 8 deletions
diff --git a/drivers/base/memory.c b/drivers/base/memory.c
index 156b89b14fcc..f65f3d53dc64 100644
--- a/drivers/base/memory.c
+++ b/drivers/base/memory.c
@@ -203,17 +203,14 @@ static int memory_subsys_online(struct device *dev)
return 0;
/*
- * If we are called from state_store(), online_type will be
- * set >= 0 Otherwise we were called from the device online
- * attribute and need to set the online_type.
+ * When called via device_online() without configuring the online_type,
+ * we want to default to MMOP_ONLINE.
*/
- if (mem->online_type < 0)
+ if (mem->online_type == MMOP_OFFLINE)
mem->online_type = MMOP_ONLINE;
ret = memory_block_change_state(mem, MEM_ONLINE, MEM_OFFLINE);
-
- /* clear online_type */
- mem->online_type = -1;
+ mem->online_type = MMOP_OFFLINE;
return ret;
}
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
index 261dbf010d5d..c2e06ed5e0e9 100644
--- a/include/linux/memory_hotplug.h
+++ b/include/linux/memory_hotplug.h
@@ -48,7 +48,7 @@ enum {
/* Types for control the zone type of onlined and offlined memory */
enum {
/* Offline the memory. */
- MMOP_OFFLINE = -1,
+ MMOP_OFFLINE = 0,
/* Online the memory. Zone depends, see default_zone_for_pfn(). */
MMOP_ONLINE,
/* Online the memory to ZONE_NORMAL. */