[lkml]   [2019]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[PATCH v3 2/7] mm/lruvec: add irqsave flags into lruvec struct
We need a irqflags vaiable to save state when do irqsave action, declare
it here would make code more clear/clean.

Rong Chen <> reported the 'irqflags' variable need
move to the tail of lruvec struct otherwise it causes 18% regressions of
vm-scalability testing on his machine. So add the flags and lru_lock to
both near struct tail, even I have no clue of this perf losing.

Originally-from: Hugh Dickins <>
Signed-off-by: Alex Shi <>
Cc: Andrew Morton <>
Cc: Vlastimil Babka <>
Cc: Dan Williams <>
Cc: Michal Hocko <>
Cc: Mel Gorman <>
Cc: Wei Yang <>
Cc: Johannes Weiner <>
Cc: Arun KS <>
Cc: Tejun Heo <>
Cc: Konstantin Khlebnikov <>
CC: Rong Chen <>
include/linux/mmzone.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
index a13b8a602ee5..9b8b8daf4e03 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -269,6 +269,8 @@ struct lruvec {
unsigned long flags;
/* per lruvec lru_lock for memcg */
spinlock_t lru_lock;
+ /* flags for irqsave */
+ unsigned long irqflags;
struct pglist_data *pgdat;
 \ /
  Last update: 2019-11-16 04:16    [W:0.178 / U:5.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site