From: Eric Paris <eparis@redhat.com>
To: Steve Grubb <sgrubb@redhat.com>
Cc: rgb@redhat.com, linux-audit@redhat.com,
Mateusz Guzik <mguzik@redhat.com>
Subject: Re: proposing [PATCH] audit: get rid of *NO* daemon at audit_pid=0 message
Date: Mon, 11 Nov 2013 14:28:04 -0500 [thread overview]
Message-ID: <1384198084.2938.64.camel@localhost> (raw)
In-Reply-To: <8662552.afS8akzYV8@x2>
On Mon, 2013-11-11 at 14:20 -0500, Steve Grubb wrote:
> On Monday, November 11, 2013 12:21:33 PM Eric Paris wrote:
> > On Wed, 2013-10-30 at 00:05 +0100, Mateusz Guzik wrote:
> > > Hello,
> > >
> > > I wrote a trivial patch for what I believe is a subsystem you maintain.
> > >
> > > I'm sending it privately first to ensure it looks ok at has proper
> > > recipients (I'm new to linux world, sorry :>).
> > >
> > > 'To' would be: linux-audit@redhat.com
> > >
> > > The rest is:
> > >
> > > From: Mateusz Guzik <mguzik@redhat.com>
> > > Date: Tue, 29 Oct 2013 23:51:52 +0100
> > > Subject: [PATCH] audit: get rid of *NO* daemon at audit_pid=0 message
> > >
> > > kauditd_send_skb is called after audit_pid was checked to be non-zero.
> > >
> > > However, it can be set to 0 due to auditd exiting while kauditd_send_skb
> > > is still executed and this can result in a spurious warning about missing
> > > auditd.
>
> Is it really spurious? Meaning an admin at a site making heavy use of the
> audit subsystem would never want to know this? Are the events always put back
> with no chance of loss?
>
> -Steve
auidt_pid will only get set to 0 in 2 ways. 1) auditd died, in which
case we will record the first lost message (because the pid won't be 0,
we set it to 0 after we record that message). 2) auditd/auditctl
explicitly set audit_pid to 0 (aka on shutdown) In which case, we
don't expect such a printk. It is normal that messages which race with
auditd shutting down may get 'lost'. If the message came 1 millisecond
later it would never have gotten on the queue since audit_pid would be
0.
-Eric
>
>
> > > Re-check audit_pid before printing the message.
> > >
> > > Signed-off-by: Mateusz Guzik <mguzik@redhat.com>
> > > Cc: Eric Paris <eparis@redhat.com>
> > > Cc: linux-kernel@vger.kernel.org
> >
> > Acked-by: Eric Paris <eparis@redhat.com>
> >
> > > ---
> > >
> > > kernel/audit.c | 8 +++++---
> > > 1 file changed, 5 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/kernel/audit.c b/kernel/audit.c
> > > index 7b0e23a..a91a965 100644
> > > --- a/kernel/audit.c
> > > +++ b/kernel/audit.c
> > > @@ -388,9 +388,11 @@ static void kauditd_send_skb(struct sk_buff *skb)
> > >
> > > err = netlink_unicast(audit_sock, skb, audit_nlk_portid, 0);
> > > if (err < 0) {
> > >
> > > BUG_ON(err != -ECONNREFUSED); /* Shouldn't happen */
> > >
> > > - printk(KERN_ERR "audit: *NO* daemon at audit_pid=%d\n",
> audit_pid);
> > > - audit_log_lost("auditd disappeared\n");
> > > - audit_pid = 0;
> > > + if (audit_pid) {
> > > + printk(KERN_ERR "audit: *NO* daemon at audit_pid=%d\n",
> audit_pid);
> > > + audit_log_lost("auditd disappeared\n");
> > > + audit_pid = 0;
> > > + }
> > >
> > > /* we might get lucky and get this in the next auditd */
> > > audit_hold_skb(skb);
> > >
> > > } else
> >
> > --
> > Linux-audit mailing list
> > Linux-audit@redhat.com
> > https://www.redhat.com/mailman/listinfo/linux-audit
>
prev parent reply other threads:[~2013-11-11 19:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20131029230500.GC15011@mguzik.redhat.com>
2013-11-11 17:21 ` proposing [PATCH] audit: get rid of *NO* daemon at audit_pid=0 message Eric Paris
2013-11-11 18:56 ` Richard Guy Briggs
2013-11-11 19:20 ` Steve Grubb
2013-11-11 19:28 ` Eric Paris [this message]
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=1384198084.2938.64.camel@localhost \
--to=eparis@redhat.com \
--cc=linux-audit@redhat.com \
--cc=mguzik@redhat.com \
--cc=rgb@redhat.com \
--cc=sgrubb@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.