[apparmor] [Bug 2025030] Re: apparmor_parser -O no-expr-simplify problematic

Ondrej Kubik 2025030 at bugs.launchpad.net
Thu Jul 6 17:07:04 UTC 2023


@Alex Murray <alex.murray at canonical.com>  github action is good idea to
optimise on the interface level and PR I open is trying to do that (though
I have done it manually)
But this has limitation as this optimisation can be done only per interface.
Preprocessing the full profile has the potential to optimise
cross-interfaces when multiple interfaces could define the same expression.
But one can argue that apparmor_parser should have this as the first step
before even parsing the profile, dummy dedupe and simplification of the
profile before building the tree.
it seems a lot cheaper as pre-processing step


On Tue, 4 Jul 2023 at 04:25, John Johansen <2025030 at bugs.launchpad.net>
wrote:

> so I think this is largely because the apparmor version snap is using is
> not running rule deduplication on mount rules.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/2025030
>
> Title:
>   apparmor_parser -O no-expr-simplify problematic
>
> Status in snapd:
>   In Progress
>
> Bug description:
>   There was a recent issue with a core refresh that caused breakage.
>   Upon further investigation it turns out that the apparmor_parser uses
>   an substantial of memory.
>
>   Upon some more investigation it turns out that that -O no-expr-
>   simplify makes both time to compile and memory usage increase 10x.
>   Tested with 22.04 but I see the same ballpark results with 16.04:
>
>   $ /usr/bin/time --verbose apparmor_parser -S
> 2.59/profiles/snap.screenly-client.command-executor > /dev/null
>       Command being timed: "apparmor_parser -S
> 2.59/profiles/snap.screenly-client.command-executor"
>       User time (seconds): 4.32
>       Maximum resident set size (kbytes): 117392
>
>   $ /usr/bin/time --verbose apparmor_parser  -O no-expr-simplify -S
> 2.59/profiles/snap.screenly-client.command-executor > /dev/null
>       Command being timed: "apparmor_parser -O no-expr-simplify -S
> 2.59/profiles/snap.screenly-client.command-executor"
>       User time (seconds): 40.64
>       Maximum resident set size (kbytes): 1015816
>
>   Profile is attached.
>
>
>   It seems like we seriously need to consider dropping "-O
> no-expr-simplify".
>
>   For context:
>   https://bugs.launchpad.net/ubuntu-rtm/+source/apparmor/+bug/1383858
>   is why it was added in the first place
>
>   And some recent work to make things faster:
>   https://gitlab.com/apparmor/apparmor/-/merge_requests/711
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/snapd/+bug/2025030/+subscriptions
>
>

-- 
You received this bug notification because you are a member of AppArmor
Developers, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/2025030

Title:
  apparmor_parser -O no-expr-simplify problematic

Status in snapd:
  In Progress

Bug description:
  There was a recent issue with a core refresh that caused breakage.
  Upon further investigation it turns out that the apparmor_parser uses
  an substantial of memory.

  Upon some more investigation it turns out that that -O no-expr-
  simplify makes both time to compile and memory usage increase 10x.
  Tested with 22.04 but I see the same ballpark results with 16.04:

  $ /usr/bin/time --verbose apparmor_parser -S 2.59/profiles/snap.screenly-client.command-executor > /dev/null
      Command being timed: "apparmor_parser -S 2.59/profiles/snap.screenly-client.command-executor"
      User time (seconds): 4.32
      Maximum resident set size (kbytes): 117392

  $ /usr/bin/time --verbose apparmor_parser  -O no-expr-simplify -S 2.59/profiles/snap.screenly-client.command-executor > /dev/null
      Command being timed: "apparmor_parser -O no-expr-simplify -S 2.59/profiles/snap.screenly-client.command-executor"
      User time (seconds): 40.64
      Maximum resident set size (kbytes): 1015816

  Profile is attached.

  
  It seems like we seriously need to consider dropping "-O no-expr-simplify". 

  For context:
  https://bugs.launchpad.net/ubuntu-rtm/+source/apparmor/+bug/1383858
  is why it was added in the first place

  And some recent work to make things faster:
  https://gitlab.com/apparmor/apparmor/-/merge_requests/711

To manage notifications about this bug go to:
https://bugs.launchpad.net/snapd/+bug/2025030/+subscriptions




More information about the AppArmor mailing list