I'll second both points. If IMA is disabled, but compiled in, it *HAS*
to consume 0 resources. It's defective by design if something that is
only useful to 1% of the userbase (guesstimating) consumes even 1% of
the resources on any and all machines that are deployed with it. It's
just plain wasteful of power, cooling, ram, compute resources, etc.
Keep in mind distros are going to err on the side of compiling things in
(either into the kernel or as modules) because there is a customer
*SOMEWHERE* that wants it. Penalizing the rest of us, and forcing us
(effectively) to buy more ram, is not a good option.
Wouldn't an enterprising root-kit snag root, muck with IMA and then muck
with other files? I mean I'm happy that it will trip-wire the
incompetent or old root kits, but if root can enable/disable this
outside of boot it's completely pointless.
Ignore backups, file servers and large webservers (read: basically
kernel.org's *ENTIRE* infrastructure) basically trips over this case.
To throw fire on the whole thing, if there are 100 mirrors in a
mirroring infrastructure (not uncommon for some distros) and they all
have IMA disabled but compiled in, and they are all rsyncing data (say a
distro release is ongoing) you are talking about a huge amount of waste
across all those machines.
I'd argue disabled = takes up no resources, that's what a sysadmin is
going to generally expect particularly for something that not many of
them are going to want to take advantage of.
Just my $0.02usd anyway.
- John 'Warthog9' Hawley
--