On Wed, Jul 8, 2020 at 7:13 PM Paul Moore <[email protected]> wrote: > > On Sat, Jul 4, 2020 at 11:15 AM Max Englander <[email protected]> wrote: > > > > In environments where the preservation of audit events and predictable > > usage of system memory are prioritized, admins may use a combination of > > --backlog_wait_time and -b options at the risk of degraded performance > > resulting from backlog waiting. In some cases, this risk may be > > preferred to lost events or unbounded memory usage. Ideally, this risk > > can be mitigated by making adjustments when backlog waiting is detected. > > > > However, detection can be difficult using the currently available > > metrics. For example, an admin attempting to debug degraded performance > > may falsely believe a full backlog indicates backlog waiting. It may > > turn out the backlog frequently fills up but drains quickly. > > > > To make it easier to reliably track degraded performance to backlog > > waiting, this patch makes the following changes: > > > > Add a new field backlog_wait_time_total to the audit status reply. > > Initialize this field to zero. Add to this field the total time spent > > by the current task on scheduled timeouts while the backlog limit is > > exceeded. Reset field to zero upon request via AUDIT_SET. > > > > Tested on Ubuntu 18.04 using complementary changes to the > > audit-userspace and audit-testsuite: > > - https://github.com/linux-audit/audit-userspace/pull/134 > > - https://github.com/linux-audit/audit-testsuite/pull/97 > > > > Signed-off-by: Max Englander <[email protected]> > > --- > > Patch changelogs between v1 and v2: > > - Instead of printing a warning when backlog waiting occurs, add > > duration of backlog waiting to cumulative sum, and report this > > sum in audit status reply. > > > > Patch changelogs between v2 and v3: > > - Rename backlog_wait_sum to backlog_wait_time_actual. > > - Drop unneeded and unwanted header flags > > AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_SUM and > > AUDIT_VERSION_BACKLOG_WAIT_SUM. > > - Increment backlog_wait_time_actual counter after every call to > > schedule_timeout rather than once after enqueuing (or losing) an > > audit record. > > - Add support for resetting backlog_wait_time_actual counter to zero > > upon request via AUDIT_SET. > > > > include/uapi/linux/audit.h | 18 +++++++++++------- > > kernel/audit.c | 35 +++++++++++++++++++++++++---------- > > 2 files changed, 36 insertions(+), 17 deletions(-) > > This looks okay to me, thanks for the fixes Max. > > Steve, does the associated userspace patch look okay to you?
Steve, any comments on the userspace patch? Did I miss a reply in my inbox perhaps? If I don't see any feedback by the end of the week I'll plan on merging this into audit/next. -- paul moore www.paul-moore.com -- Linux-audit mailing list [email protected] https://www.redhat.com/mailman/listinfo/linux-audit
