All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steve Grubb <sgrubb@redhat.com>
To: Lev Olshvang <levonshe@yandex.com>
Cc: linux-audit@redhat.com
Subject: Re: why I have lost messages on boot even with very big backlog while I hunting only 2 syscalls?
Date: Sat, 30 Sep 2017 10:03:59 -0400	[thread overview]
Message-ID: <2211384.A5pHi75BCj@x2> (raw)
In-Reply-To: <139931506775703@web48o.yandex.ru>

On Saturday, September 30, 2017 8:48:23 AM EDT you wrote:
> Re: why I have lost messages on boot even with very big backlog while I
> hunting only 2 syscalls? 
> From:	Lev Olshvang <levonshe@yandex.com>
> To:	Me
> CC:	"linux-audit@redhat.com" <linux-audit@redhat.com>
> Date:	9/30/17 8:48 AM
> 
> 28.09.2017, 17:02, "Steve Grubb" <sgrubb@redhat.com>:
> > Hello,
> > 
> > On Thursday, September 28, 2017 4:51:38 AM EDT Lev Olshvang wrote:
> >>  28.09.2017, 00:32, "Steve Grubb" <sgrubb@redhat.com>:
> >>  > On Wednesday, September 27, 2017 4:41:29 PM EDT Lev Olshvang wrote:
> >>  >> Hello list !
> >>  >> 
> >>  >> A very technical question
> >>  >> I have Ubuntu 16.10 Virtual Box , auditd 2.7.8
> >>  >> I have audit=1 parameter in grub.cfg
> >>  >> I see that /proc/cmdline indeed sees it
> >>  >> 
> >>  >> I see that auditd is started with PID 564
> >>  >> 
> >>  >> root 312 2 0 23:12 ? 00:00:00 [kauditd]
> >>  >> root 564 1 0 23:12 ? 00:00:00 /sbin/auditd
> >>  >> 
> >>  >> And I have 15 lost messages ???
> >>  >> auditctl -s
> >>  >> enabled 1
> >>  >> failure 1
> >>  >> pid 564
> >>  >> rate_limit 0
> >>  >> backlog_limit 16384
> >>  >> lost 15
> >>  >> backlog 0
> >>  >> backlog_wait_time 30
> >>  >> loginuid_immutable 0 unlocked
> >>  >> 
> >>  >> auditctl -l
> >>  >> -a always,exit -F arch=b64 -S execve,execveat -F key=exec
> >>  >> 
> >>  >> Do I understand correctly that auiditd is indeed started by systemd
> >>  >> before
> >>  >> other services, except 2 that is listed in auditd.service
> >>  >> dependencuies
> >>  >> -
> >>  >> local-fs and some temp setup of systemd ?
> >>  > 
> >>  > Yes, it is started before most services. However. systemd-journal for
> >>  > some
> >>  > reason feels obligated to enable auditing. And sometimes people put
> >>  > audit=1 on the kernel command line. Either way, auditing is on way
> >>  > before
> >>  > auditd starts. The audit logs have a 64 entry buffer by default. So,
> >>  > as
> >>  > the system boots events pile up and eventually overflows the 64 entry
> >>  > limit.
> >>  > 
> >>  > The fix is to add another boot command option audit_backlog_limit=8192
> >>  > or
> >>  > some other suitable number. The test to check for this is to boot your
> >>  > system, login and run auditctl -s. If you have just booted and lost
> >>  > events during boot, this should fix it.
> >>  > 
> >>  > -Steve
> >>  
> >>  Hi Steve
> >>  
> >>  Thank you for your answer.
> >>  I added backlog parameter as you advised, but it did not solve the
> >>  problem
> >>  
> >>  cat /proc/cmdline
> >>  BOOT_IMAGE=/vmlinuz-4.8.0-59-generic root=/dev/mapper/kubuntu--vg-root
> >>  ro
> >>  net.ifnames=0 biosdevname=0 audit=1 audit_backlog_limit=8192 debug
> >>  splash
> >>  auditctl -s
> >>  enabled 1
> >>  failure 1
> >>  pid 672
> >>  rate_limit 0
> >>  backlog_limit 16384
> >>  lost 16
> >>  backlog 10
> >>  backlog_wait_time 30
> >>  loginuid_immutable 0 unlocked
> >>  
> >>  Perhaps something else in configuration ?
> > 
> > You have a backlog of 10. That should normally be 0 unless the system is
> > very busy. What do you have for the flush and freq settings in
> > auditd.conf?
> > 
> > -Steve
> 
> Hi Steve,
> 
> I overloked your mail yesterday, sorry for delay.
> 
> 
> Here the auditd.conf
> 
> local_events = yes
> write_logs = yes
> log_format = RAW
> log_file = /var/log/audit/audit.log
> log_group = root
> priority_boost = 16
> flush = INCREMENTAL_ASYNC
> freq = 20
> num_logs = 5
> disp_qos = lossy
> 
> 
> I increased priority_boost from 4 to 16 in a hope to solve lost messages
> problem. I observed other values of backlog, it was sometimes 6, sometimes
> 7.
> 
> Today I made very big backlog, here are results
> enabled 1
> failure 1
> pid 663
> rate_limit 0
> backlog_limit 32768
> lost 15
> backlog 0
> backlog_wait_time 15000
> 
> Still 15 losts, now events in backlog
> Perhaps I need to add some tracer to lost messages code in kernel to debug
> it.

Maybe adjust your freq from 20 to maybe 50. Other than that, I don't know of 
any other user space tricks to improve the flow rate. Maybe Paul or Richard 
has ideas. I see you have a 4.8 kernel. I think I remember there being some 
netlink comm issues prior to 4.12.

-Steve

  reply	other threads:[~2017-09-30 14:03 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-27 20:41 why I have lost messages on boot even with very big backlog while I hunting only 2 syscalls? Lev Olshvang
2017-09-27 21:32 ` Steve Grubb
2017-09-28  8:51   ` Lev Olshvang
2017-09-28 14:02     ` Steve Grubb
2017-09-30 12:48       ` Lev Olshvang
2017-09-30 14:03         ` Steve Grubb [this message]
2017-10-02 14:16           ` Paul Moore

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2211384.A5pHi75BCj@x2 \
    --to=sgrubb@redhat.com \
    --cc=levonshe@yandex.com \
    --cc=linux-audit@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.