lskq
LSKQ(1) General Commands Manual LSKQ(1)
NAME
lskq – display process kqueue state
SYNOPSIS
lskq [-vhe] [-p <pid> | -a]
DESCRIPTION
The lskq command enumerates kqueues and registered kevents of running
processes.
OPTIONS
-p <pid>
Show kqueues of process <pid>.
-a Show kqueues for all running processes. Requires root.
-v Verbose: show opaque user data and filter-specific extension fields.
-e Ignore empty kqueues.
-r Print fields in raw hex.
-h Show help and exit.
OUTPUT
lskq prints one line of output for each registered kevent, consisting of
process, kqueue, and kevent information. For kqueues with no registered
kevents, a single line is output with an ident of `-'. See kevent(2) for
field semantics. The output columns are:
command shortened process name.
pid process identifier.
kq file descriptor corresponding to kqueue, or ``wq'' for the
special workq kqueue.
kqst kqueue status bitmask.
k kqueue is in a kevent*() wait set (KQ_SLEEP).
s kqueue is in a select() wait set (KQ_SEL).
3 6 q Type of kevents on this kqueue: KEV32, KEV64, or
KEV_QOS.
ident kevent identifier. The meaning depends on the kevent filter
specified. Where possible, lskq prints both numeric and
symbolic names.
filter kevent filter type (EVFILT_*).
fdtype file descriptor type, for filters operating on file
descriptors.
fflags kevent filter flags bitmask. The meaning of each field
depends on the filter type.
EVFILT_READ:
l NOTE_LOWAT
EVFILT_MACHPORT:
r MACH_RCV_MSG
EVFILT_VNODE:
d NOTE_DELETE
w NOTE_WRITE
e NOTE_EXTEND
a NOTE_ATTRIB
l NOTE_LINK
r NOTE_RENAME
v NOTE_REVOKE
u NOTE_FUNLOCK
EVFILT_PROC:
x NOTE_EXIT
t NOTE_EXITSTATUS
d NOTE_EXIT_DETAIL
f NOTE_FORK
e NOTE_EXEC
s NOTE_SIGNAL
r NOTE_REAP
EVFILT_TIMER:
s u n m NOTE_SECONDS, NOTE_USECONDS, NOTE_NSECONDS,
NOTE_MACHTIME
a A NOTE_ABSOLUTE, NOTE_MACH_CONTINUOUS_TIME
c NOTE_CRITICAL
b NOTE_BACKGROUND
l NOTE_LEEWAY
EVFILT_USER:
t NOTE_TRIGGER
a NOTE_FFAND
o NOTE_FFOR
EVFILT_WORKLOOP:
t w i NOTE_WL_THREAD_REQUEST, NOTE_WL_SYNC_WAIT,
NOTE_WL_SYNC_IPC
W NOTE_WL_SYNC_WAKE
q NOTE_WL_UPDATE_QOS
o NOTE_WL_DISCOVER_OWNER
e NOTE_WL_IGNORE_ESTALE
flags kevent generic flags bitmask.
a EV_ADD
n EV_ENABLE
d EV_DISABLE
x EV_DELETE
r EV_RECEIPT
1 EV_ONESHOT
c EV_CLEAR
s EV_DISPATCH
u EV_UDATA_SPECIFIC
p EV_FLAG0 (EV_POLL)
b EV_FLAG1 (EV_OOBAND)
o EV_EOF
e EV_ERROR
evst kevent status bitmask.
a KN_ACTIVE (event has triggered)
q KN_QUEUED (event has been added to the active list)
d KN_DISABLED (knote is disabled)
p KN_SUPPRESSED (event delivery is in flight)
s KN_STAYACTIVE (event is marked as always-enqueued on
the active list)
d KN_DROPPING (knote is about to be dropped)
l KN_LOCKED (knote is locked)
P KN_POSTING (knote is being posted)
m KN_MERGE_QOS (knote is in override saturating mode)
D KN_DEFERDELETE (knote is waiting for deferred-delete
ack)
v KN_REQVANISH
n KN_VANISHED
qos The QoS requested for the knote.
data Filter-specific data.
If the -v (verbose) option is specified, the opaque user-data field and
further filter-specific extension fields are printed in raw hexadecimal.
NOTES
The output of lskq is not an atomic snapshot of system state. In cases
where lskq is able to detect an inconsistency, a warning will be printed.
Not all flags are symbolicated. Use -r (raw mode) to inspect additional
flags.
SEE ALSO
ddt(1), lsmp(1), kevent(2), kqueue(2), lsof(8)
macOS April 20, 2015 macOS