Paul Moore
c6480207fd
audit: rework the audit queue handling
...
The audit record backlog queue has always been a bit of a mess, and
the moving the multicast send into kauditd_thread() from
audit_log_end() only makes things worse. This patch attempts to fix
the backlog queue with a better design that should hold up better
under load and have less of a performance impact at syscall
invocation time.
While it looks like there is a log going on in this patch, the main
change is the move from a single backlog queue to three queues:
* A queue for holding records generated from audit_log_end() that
haven't been consumed by kauditd_thread() (audit_queue).
* A queue for holding records that have been sent via multicast but
had a temporary failure when sending via unicast and need a resend
(audit_retry_queue).
* A queue for holding records that haven't been sent via unicast
because no one is listening (audit_hold_queue).
Special care is taken in this patch to ensure that the proper
record ordering is preserved, e.g. we send everything in the hold
queue first, then the retry queue, and finally the main queue.
Signed-off-by: Paul Moore <paul@paul-moore.com>
2016-12-14 13:06:04 -05:00
..
bpf
bpf: fix bpf_skb_in_cgroup helper naming
2016-08-12 21:53:33 -07:00
configs
kconfig: tinyconfig: provide whole choice blocks to avoid warnings
2016-09-01 17:52:01 -07:00
debug
events
perf/core: Limit matching exclusive events to one PMU
2016-09-22 14:56:09 +02:00
gcov
gcov: add support for gcc version >= 6
2016-07-15 14:54:27 +09:00
irq
genirq: Skip chained interrupt trigger setup if type is IRQ_TYPE_NONE
2016-09-19 11:31:36 +02:00
livepatch
modules: add ro_after_init support
2016-08-04 10:16:55 +09:30
locking
locking/pvqspinlock: Fix a bug in qstat_read()
2016-08-10 14:13:29 +02:00
power
PM / QoS: avoid calling cancel_delayed_work_sync() during early boot
2016-09-05 15:07:53 +02:00
printk
printk/nmi: avoid direct printk()-s from __printk_nmi_flush()
2016-09-01 17:52:01 -07:00
rcu
Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-07-29 13:55:30 -07:00
sched
sched/core: Fix a race between try_to_wake_up() and a woken up task
2016-09-05 11:57:53 +02:00
time
tick/nohz: Fix softlockup on scheduler stalls in kvm guest
2016-09-02 10:25:40 +02:00
trace
Al Viro has been looking at the tracefs code, and has pointed out
2016-09-25 18:40:13 -07:00
.gitignore
acct.c
async.c
audit.c
audit: rework the audit queue handling
2016-12-14 13:06:04 -05:00
audit.h
Merge branch 'stable-4.8' of git://git.infradead.org/users/pcmoore/audit
2016-07-29 17:54:17 -07:00
audit_fsnotify.c
audit: fix formatting of AUDIT_CONFIG_CHANGE events
2016-11-20 15:38:00 -05:00
audit_tree.c
audit: fix formatting of AUDIT_CONFIG_CHANGE events
2016-11-20 15:38:00 -05:00
audit_watch.c
audit: fix formatting of AUDIT_CONFIG_CHANGE events
2016-11-20 15:38:00 -05:00
auditfilter.c
audit: add support for session ID user filter
2016-11-29 15:10:12 -05:00
auditsc.c
audit: add support for session ID user filter
2016-11-29 15:10:12 -05:00
backtracetest.c
bounds.c
capability.c
kernel: Add noaudit variant of ns_capable()
2016-06-06 20:16:18 +10:00
cgroup.c
Merge branch 'for-4.8-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2016-09-27 16:43:11 -07:00
cgroup_freezer.c
cgroup_pids.c
cgroup: Use lld instead of ld when printing pids controller events_limit
2016-06-21 15:03:36 -04:00
compat.c
configs.c
context_tracking.c
cpu.c
timers/core: Correct callback order during CPU hot plug
2016-07-28 18:56:22 +02:00
cpu_pm.c
cpuset.c
cpuset: fix non static symbol warning
2016-09-16 11:31:17 -04:00
crash_dump.c
cred.c
cred: Reject inodes with invalid ids in set_create_file_as()
2016-06-30 18:05:09 -05:00
delayacct.c
dma.c
elfcore.c
exec_domain.c
exit.c
mm, mempolicy: task->mempolicy must be NULL before dropping final reference
2016-09-01 17:52:01 -07:00
extable.c
fork.c
Merge branch 'akpm' (patches from Andrew)
2016-09-01 18:23:22 -07:00
freezer.c
freezer, oom: check TIF_MEMDIE on the correct task
2016-07-28 16:07:41 -07:00
futex.c
futex: Assume all mappings are private on !MMU systems
2016-07-29 18:44:14 +02:00
futex_compat.c
groups.c
hung_task.c
irq_work.c
jump_label.c
powerpc updates for 4.8 #2
2016-08-05 09:00:54 -04:00
kallsyms.c
kcmp.c
Kconfig.freezer
Kconfig.hz
Kconfig.locks
Kconfig.preempt
kcov.c
kernel/kcov: unproxify debugfs file's fops
2016-06-15 04:56:35 -07:00
kexec.c
kexec: allow architectures to override boot mapping
2016-08-02 19:35:27 -04:00
kexec_core.c
kexec: add restriction on kexec_load() segment sizes
2016-08-02 19:35:31 -04:00
kexec_file.c
kexec: fix double-free when failing to relocate the purgatory
2016-09-01 17:52:01 -07:00
kexec_internal.h
kmod.c
kprobes.c
ksysfs.c
kexec: add a kexec_crash_loaded() function
2016-08-02 19:35:30 -04:00
kthread.c
latencytop.c
Makefile
ELF/MIPS build fix
2016-05-23 17:04:14 -07:00
membarrier.c
memremap.c
mm: fix cache mode of dax pmd mappings
2016-09-09 17:34:46 -07:00
module-internal.h
module.c
Removed the MODULE_SIG_FORCE-means-no-MODULE_FORCE_LOAD patch.
2016-08-04 09:14:38 -04:00
module_signing.c
KEYS: Move the point of trust determination to __key_link()
2016-04-11 22:43:43 +01:00
notifier.c
nsproxy.c
padata.c
kernel/padata.c: hide unused functions
2016-05-19 19:12:14 -07:00
panic.c
kexec: use core_param for crash_kexec_post_notifiers boot option
2016-08-02 19:35:29 -04:00
params.c
pid.c
remove lots of IS_ERR_VALUE abuses
2016-05-27 15:26:11 -07:00
pid_namespace.c
profile.c
profile: Convert to hotplug state machine
2016-07-15 10:41:42 +02:00
ptrace.c
tree-wide: replace config_enabled() with IS_ENABLED()
2016-08-04 08:50:07 -04:00
range.c
reboot.c
relay.c
relay: add global mode support for buffer-only channels
2016-08-02 19:35:41 -04:00
resource.c
/proc/iomem: only expose physical resource addresses to privileged users
2016-04-14 12:56:09 -07:00
seccomp.c
seccomp: Fix tracer exit notifications during fatal signals
2016-08-30 16:12:46 -07:00
signal.c
signals: Use hrtimer for sigtimedwait()
2016-07-07 10:35:07 +02:00
smp.c
Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-07-29 13:55:30 -07:00
smpboot.c
smpboot.h
softirq.c
arch, ftrace: for KASAN put hard/soft IRQ entries into separate sections
2016-03-25 16:37:42 -07:00
stacktrace.c
stop_machine.c
stop_machine: Touch_nmi_watchdog() after MULTI_STOP_PREPARE
2016-07-27 11:12:11 +02:00
sys.c
prctl: make PR_SET_THP_DISABLE wait for mmap_sem killable
2016-05-23 17:04:14 -07:00
sys_ni.c
sysctl.c
sysctl: handle error writing UINT_MAX to u32 fields
2016-08-26 17:39:35 -07:00
sysctl_binary.c
kernel/sysctl_binary.c: use generic UUID library
2016-05-20 17:58:30 -07:00
task_work.c
task_work: use READ_ONCE/lockless_dereference, avoid pi_lock if !task_works
2016-08-02 19:35:02 -04:00
taskstats.c
taskstats: use the libnl API to align nlattr on 64-bit
2016-04-23 20:13:25 -04:00
test_kprobes.c
torture.c
torture: Stop onoff task if there is only one cpu
2016-06-14 16:03:28 -07:00
tracepoint.c
kernel/...: convert pr_warning to pr_warn
2016-03-22 15:36:02 -07:00
tsacct.c
uid16.c
up.c
user-return-notifier.c
user.c
user_namespace.c
fs: Limit file caps to the user namespace of the super block
2016-06-24 10:40:31 -05:00
utsname.c
utsname_sysctl.c
watchdog.c
Revert "perf/x86/intel, watchdog: Switch NMI watchdog to ref cycles on x86"
2016-07-10 20:58:36 +02:00
workqueue.c
Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-07-29 13:55:30 -07:00
workqueue_internal.h