[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGudoHFfG7mARwSqcoLNwV81-KX4Bici5FQHjoNG4f9m83oLyg@mail.gmail.com>
Date:   Fri, 22 Sep 2023 23:19:21 +0200
From:   Mateusz Guzik <mjguzik@...il.com>
To:     John Johansen <john.johansen@...onical.com>
Cc:     apparmor@...ts.ubuntu.com, linux-security-module@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: use per-cpu refcounts for apparmor labels?
I'm sanity-checking perf in various microbenchmarks and I found
apparmor to be the main bottleneck in some of them.
For example: will-it-scale open1_processes -t 16, top of the profile:
  20.17%  [kernel]                   [k] apparmor_file_alloc_security
  20.08%  [kernel]                   [k] apparmor_file_open
  20.05%  [kernel]                   [k] apparmor_file_free_security
  18.39%  [kernel]                   [k] apparmor_current_getsecid_subj
[snip]
This serializes on refing/unrefing apparmor objs, sounds like a great
candidate for per-cpu refcounting instead (I'm assuming they are
expected to be long-lived).
I would hack it up myself, but I failed to find a clear spot to switch
back from per-cpu to centalized operation and don't want to put
serious effort into it.
Can you sort this out?
Thanks,
-- 
Mateusz Guzik <mjguzik gmail.com>
Powered by blists - more mailing lists