mm: add DEVICE_ZONE to FOR_ALL_ZONES
FOR_ALL_ZONES should be consistent with enum zone_type. Otherwise, __count_zid_vm_events have the potential to add count to wrong item when zid is ZONE_DEVICE. Link: https://lkml.kernel.org/r/20220807154442.GA18167@haolee.io Signed-off-by: Hao Lee <haolee.swjtu@gmail.com> Cc: David Hildenbrand <david@redhat.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
a8faed3a02
commit
a39c5d3ce0
@ -20,12 +20,19 @@
|
|||||||
#define HIGHMEM_ZONE(xx)
|
#define HIGHMEM_ZONE(xx)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, HIGHMEM_ZONE(xx) xx##_MOVABLE
|
#ifdef CONFIG_ZONE_DEVICE
|
||||||
|
#define DEVICE_ZONE(xx) xx##_DEVICE,
|
||||||
|
#else
|
||||||
|
#define DEVICE_ZONE(xx)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, \
|
||||||
|
HIGHMEM_ZONE(xx) xx##_MOVABLE, DEVICE_ZONE(xx)
|
||||||
|
|
||||||
enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
|
enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
|
||||||
FOR_ALL_ZONES(PGALLOC),
|
FOR_ALL_ZONES(PGALLOC)
|
||||||
FOR_ALL_ZONES(ALLOCSTALL),
|
FOR_ALL_ZONES(ALLOCSTALL)
|
||||||
FOR_ALL_ZONES(PGSCAN_SKIP),
|
FOR_ALL_ZONES(PGSCAN_SKIP)
|
||||||
PGFREE, PGACTIVATE, PGDEACTIVATE, PGLAZYFREE,
|
PGFREE, PGACTIVATE, PGDEACTIVATE, PGLAZYFREE,
|
||||||
PGFAULT, PGMAJFAULT,
|
PGFAULT, PGMAJFAULT,
|
||||||
PGLAZYFREED,
|
PGLAZYFREED,
|
||||||
|
@ -1168,8 +1168,15 @@ int fragmentation_index(struct zone *zone, unsigned int order)
|
|||||||
#define TEXT_FOR_HIGHMEM(xx)
|
#define TEXT_FOR_HIGHMEM(xx)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef CONFIG_ZONE_DEVICE
|
||||||
|
#define TEXT_FOR_DEVICE(xx) xx "_device",
|
||||||
|
#else
|
||||||
|
#define TEXT_FOR_DEVICE(xx)
|
||||||
|
#endif
|
||||||
|
|
||||||
#define TEXTS_FOR_ZONES(xx) TEXT_FOR_DMA(xx) TEXT_FOR_DMA32(xx) xx "_normal", \
|
#define TEXTS_FOR_ZONES(xx) TEXT_FOR_DMA(xx) TEXT_FOR_DMA32(xx) xx "_normal", \
|
||||||
TEXT_FOR_HIGHMEM(xx) xx "_movable",
|
TEXT_FOR_HIGHMEM(xx) xx "_movable", \
|
||||||
|
TEXT_FOR_DEVICE(xx)
|
||||||
|
|
||||||
const char * const vmstat_text[] = {
|
const char * const vmstat_text[] = {
|
||||||
/* enum zone_stat_item counters */
|
/* enum zone_stat_item counters */
|
||||||
|
Loading…
Reference in New Issue
Block a user