• Yosry Ahmed's avatar
    cgroup: rename cgroup_rstat_flush_"irqsafe" to "atomic" · 8bff9a04
    Yosry Ahmed authored
    Patch series "memcg: avoid flushing stats atomically where possible", v3.
    
    rstat flushing is an expensive operation that scales with the number of
    cpus and the number of cgroups in the system.  The purpose of this series
    is to minimize the contexts where we flush stats atomically.
    
    Patches 1 and 2 are cleanups requested during reviews of prior versions of
    this series.
    
    Patch 3 makes sure we never try to flush from within an irq context.
    
    Patches 4 to 7 introduce separate variants of mem_cgroup_flush_stats() for
    atomic and non-atomic flushing, and make sure we only flush the stats
    atomically when necessary.
    
    Patch 8 is a slightly tangential optimization that limits the work done by
    rstat flushing in some scenarios.
    
    
    This patch (of 8):
    
    cgroup_rstat_flush_irqsafe() can be a confusing name.  It may read as
    "irqs are disabled throughout", which is what the current implementation
    does (currently under discussion [1]), but is not the intention.  The
    intention is that this function is safe to call from atomic contexts. 
    Name it as such.
    
    Link: https://lkml.kernel.org/r/20230330191801.1967435-1-yosryahmed@google.com
    Link: https://lkml.kernel.org/r/20230330191801.1967435-2-yosryahmed@google.comSigned-off-by: default avatarYosry Ahmed <yosryahmed@google.com>
    Suggested-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
    Acked-by: default avatarShakeel Butt <shakeelb@google.com>
    Acked-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: Josef Bacik <josef@toxicpanda.com>
    Cc: Michal Hocko <mhocko@kernel.org>
    Cc: Michal Koutný <mkoutny@suse.com>
    Cc: Muchun Song <muchun.song@linux.dev>
    Cc: Roman Gushchin <roman.gushchin@linux.dev>
    Cc: Tejun Heo <tj@kernel.org>
    Cc: Vasily Averin <vasily.averin@linux.dev>
    Cc: Zefan Li <lizefan.x@bytedance.com>
    Cc: Michal Hocko <mhocko@suse.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    8bff9a04
rstat.c 14.9 KB