summaryrefslogtreecommitdiffstats
path: root/sys/compat/linux/linux_util.c
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2008-10-30 21:58:39 +0000
committerrwatson <rwatson@FreeBSD.org>2008-10-30 21:58:39 +0000
commit7e2b08356c19e6c783af571cd6c278cd0412eb84 (patch)
treed87f25585b05298a2ca428a954bbef8666c3ba86 /sys/compat/linux/linux_util.c
parentdafc63cd43bf0c7ea93a1deb268c4cfc08fbaa8b (diff)
downloadFreeBSD-src-7e2b08356c19e6c783af571cd6c278cd0412eb84.zip
FreeBSD-src-7e2b08356c19e6c783af571cd6c278cd0412eb84.tar.gz
Break out single audit_pipe_mtx into two types of locks: a global rwlock
protecting the list of audit pipes, and a per-pipe mutex protecting the queue. Likewise, replace the single global condition variable used to signal delivery of a record to one or more pipes, and add a per-pipe condition variable to avoid spurious wakeups when event subscriptions differ across multiple pipes. This slightly increases the cost of delivering to audit pipes, but should reduce lock contention in the presence of multiple readers as only the per-pipe lock is required to read from a pipe, as well as avoid overheading when different pipes are used in different ways. MFC after: 2 months Sponsored by: Apple, Inc.
Diffstat (limited to 'sys/compat/linux/linux_util.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud