diff options
author | Cameron Katri <me@cameronkatri.com> | 2021-05-09 14:20:58 -0400 |
---|---|---|
committer | Cameron Katri <me@cameronkatri.com> | 2021-05-09 14:20:58 -0400 |
commit | 5fd83771641d15c418f747bd343ba6738d3875f7 (patch) | |
tree | 5abf0f78f680d9837dbd93d4d4c3933bb7509599 /system_cmds/lskq.tproj/lskq.1 | |
download | apple_cmds-5fd83771641d15c418f747bd343ba6738d3875f7.tar.gz apple_cmds-5fd83771641d15c418f747bd343ba6738d3875f7.tar.zst apple_cmds-5fd83771641d15c418f747bd343ba6738d3875f7.zip |
Import macOS userland
adv_cmds-176
basic_cmds-55
bootstrap_cmds-116.100.1
developer_cmds-66
diskdev_cmds-667.40.1
doc_cmds-53.60.1
file_cmds-321.40.3
mail_cmds-35
misc_cmds-34
network_cmds-606.40.1
patch_cmds-17
remote_cmds-63
shell_cmds-216.60.1
system_cmds-880.60.2
text_cmds-106
Diffstat (limited to 'system_cmds/lskq.tproj/lskq.1')
-rw-r--r-- | system_cmds/lskq.tproj/lskq.1 | 236 |
1 files changed, 236 insertions, 0 deletions
diff --git a/system_cmds/lskq.tproj/lskq.1 b/system_cmds/lskq.tproj/lskq.1 new file mode 100644 index 0000000..86e31d8 --- /dev/null +++ b/system_cmds/lskq.tproj/lskq.1 @@ -0,0 +1,236 @@ +.\" Copyright (c) 2015, Apple Inc. All rights reserved. +.\" +.Dd Apr 20, 2015 +.Dt lskq 1 +.Os "Mac OS X" +.Sh NAME +.Nm lskq +.Nd display process kqueue state +.Sh SYNOPSIS +.Nm lskq +.Op Fl vhe +.Op Fl p Ar <pid> | Fl a +.Sh DESCRIPTION +The +.Nm lskq +command enumerates kqueues and registered kevents of running processes. +.Sh OPTIONS +.Pp +.Bl -tag -width xxx +.It Fl p Ar <pid> +Show kqueues of process +.Ar <pid> . +.It Fl a +Show kqueues for all running processes. Requires root. +.It Fl v +Verbose: show opaque user data and filter-specific extension fields. +.It Fl e +Ignore empty kqueues. +.It Fl r +Print fields in raw hex. +.It Fl h +Show help and exit. +.El +.Sh OUTPUT +.Nm 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 +.Xr kevent 2 +for field semantics. The output columns are: +.Bl -tag -width xxxxxxxxxxxx +.It command +shortened process name. +.It pid +process identifier. +.It kq +file descriptor corresponding to kqueue, or ``wq'' for the special workq kqueue. +.It kqst +kqueue status bitmask. +.Bl -tag -width xxxxxxx -compact +.It Sy k +kqueue is in a +.Fn kevent* +wait set (KQ_SLEEP). +.It Sy s +kqueue is in a +.Fn select +wait set (KQ_SEL). +.It Sy 3 6 q +Type of kevents on this kqueue: KEV32, KEV64, or KEV_QOS. +.El +.It ident +kevent identifier. The meaning depends on the kevent filter specified. Where +possible, +.Nm lskq +prints both numeric and symbolic names. +.It filter +kevent filter type (EVFILT_*). +.It fdtype +file descriptor type, for filters operating on file descriptors. +.It fflags +kevent filter flags bitmask. The meaning of each field depends on the filter type. +.Bl -tag -width xxxxxxx -compact +.Pp +.It EVFILT_READ: +.It Sy l +NOTE_LOWAT +.Pp +.It EVFILT_MACHPORT: +.It Sy r +MACH_RCV_MSG +.Pp +.It EVFILT_VNODE: +.It Sy d +NOTE_DELETE +.It Sy w +NOTE_WRITE +.It Sy e +NOTE_EXTEND +.It Sy a +NOTE_ATTRIB +.It Sy l +NOTE_LINK +.It Sy r +NOTE_RENAME +.It Sy v +NOTE_REVOKE +.It Sy u +NOTE_FUNLOCK +.Pp +.It EVFILT_PROC: +.It Sy x +NOTE_EXIT +.It Sy t +NOTE_EXITSTATUS +.It Sy d +NOTE_EXIT_DETAIL +.It Sy f +NOTE_FORK +.It Sy e +NOTE_EXEC +.It Sy s +NOTE_SIGNAL +.It Sy r +NOTE_REAP +.Pp +.It EVFILT_TIMER: +.It Sy s u n m +NOTE_SECONDS, NOTE_USECONDS, NOTE_NSECONDS, NOTE_MACHTIME +.It Sy a A +NOTE_ABSOLUTE, NOTE_MACH_CONTINUOUS_TIME +.It Sy c +NOTE_CRITICAL +.It Sy b +NOTE_BACKGROUND +.It Sy l +NOTE_LEEWAY +.Pp +.It EVFILT_USER: +.It Sy t +NOTE_TRIGGER +.It Sy a +NOTE_FFAND +.It Sy o +NOTE_FFOR +.Pp +.It EVFILT_WORKLOOP: +.It Sy t w i +NOTE_WL_THREAD_REQUEST, NOTE_WL_SYNC_WAIT, NOTE_WL_SYNC_IPC +.It Sy W +NOTE_WL_SYNC_WAKE +.It Sy q +NOTE_WL_UPDATE_QOS +.It Sy o +NOTE_WL_DISCOVER_OWNER +.It Sy e +NOTE_WL_IGNORE_ESTALE +.El +.It flags +kevent generic flags bitmask. +.Bl -tag -width xxxxxxx -compact +.It Sy a +EV_ADD +.It Sy n +EV_ENABLE +.It Sy d +EV_DISABLE +.It Sy x +EV_DELETE +.Pp +.It Sy r +EV_RECEIPT +.It Sy 1 +EV_ONESHOT +.It Sy c +EV_CLEAR +.It Sy s +EV_DISPATCH +.Pp +.It Sy u +EV_UDATA_SPECIFIC +.It Sy p +EV_FLAG0 (EV_POLL) +.It Sy b +EV_FLAG1 (EV_OOBAND) +.It Sy o +EV_EOF +.It Sy e +EV_ERROR +.El +.It evst +kevent status bitmask. +.Bl -tag -width xxxxxxx -compact +.It Sy a +KN_ACTIVE (event has triggered) +.It Sy q +KN_QUEUED (event has been added to the active list) +.It Sy d +KN_DISABLED (knote is disabled) +.It Sy p +KN_SUPPRESSED (event delivery is in flight) +.It Sy s +KN_STAYACTIVE (event is marked as always-enqueued on the active list) +.Pp +.It Sy d +KN_DROPPING (knote is about to be dropped) +.It Sy l +KN_LOCKED (knote is locked) +.It Sy P +KN_POSTING (knote is being posted) +.It Sy m +KN_MERGE_QOS (knote is in override saturating mode) +.Pp +.It Sy D +KN_DEFERDELETE (knote is waiting for deferred-delete ack) +.It Sy v +KN_REQVANISH +.It Sy n +KN_VANISHED +.El +.It qos +The QoS requested for the knote. +.It data +Filter-specific data. +.El +.Pp +If the +.Fl v +(verbose) option is specified, the opaque user-data field and further +filter-specific extension fields are printed in raw hexadecimal. +.Sh NOTES +The output of +.Nm lskq +is not an atomic snapshot of system state. In cases where +.Nm lskq +is able to detect an inconsistency, a warning will be printed. +.Pp +Not all flags are symbolicated. Use +.Fl r +(raw mode) to inspect additional flags. +.Sh SEE ALSO +.Xr kqueue 2 , +.Xr kevent 2 , +.Xr ddt 1 , +.Xr lsof 8 , +.Xr lsmp 1 |