selinux: call WARN_ONCE() instead of calling audit_log_start()
authorRichard Guy Briggs <rgb@redhat.com>
Thu, 21 Nov 2013 18:31:40 +0000 (13:31 -0500)
committerEric Paris <eparis@redhat.com>
Tue, 14 Jan 2014 03:32:00 +0000 (22:32 -0500)
commit9ad42a79247d5e16d26f7d1531a68f20a889c5af
tree3d0af9e44b66f8738b4be24ac82b560612b68ece
parent4440e8548153e9e6d56db9abe6f3bc0e5b9eb74f
selinux: call WARN_ONCE() instead of calling audit_log_start()

Two of the conditions in selinux_audit_rule_match() should never happen and
the third indicates a race that should be retried.  Remove the calls to
audit_log() (which call audit_log_start()) and deal with the errors in the
caller, logging only once if the condition is met.  Calling audit_log_start()
in this location makes buffer allocation and locking more complicated in the
calling tree (audit_filter_user()).

Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
Signed-off-by: Eric Paris <eparis@redhat.com>
security/selinux/ss/services.c