perf_event_open.2: Add a note that dyn_size is omitted if size == 0

The perf_output_sample_ustack in kernel/events/core.c only writes
a single 64 bit word if it can't dump the user registers. From the
current version of the man page, I would have expected two 64 bit
words (one for size, one for dyn_size). Change the man page to
make this behavior explicit.

Reviewed-by: Vince Weaver <vincent.weaver@maine.edu>
This commit is contained in:
Keno Fischer 2016-07-03 19:08:33 -04:00 committed by Michael Kerrisk
parent 9fb88bc878
commit 4dc411ddbd
1 changed files with 6 additions and 1 deletions

View File

@ -1994,7 +1994,7 @@ struct {
/* if PERF_SAMPLE_REGS_USER */
u64 size; /* if PERF_SAMPLE_STACK_USER */
char data[size]; /* if PERF_SAMPLE_STACK_USER */
u64 dyn_size; /* if PERF_SAMPLE_STACK_USER */
u64 dyn_size; /* if PERF_SAMPLE_STACK_USER && size != 0 */
u64 weight; /* if PERF_SAMPLE_WEIGHT */
u64 data_src; /* if PERF_SAMPLE_DATA_SRC */
u64 transaction;/* if PERF_SAMPLE_TRANSACTION */
@ -2185,6 +2185,11 @@ stack pointer at the time of sampling).
.I dyn_size
is the amount of data actually dumped (can be less than
.IR size ).
Note that
.I dyn_size
is omitted if
.I size
is 0.
.TP
.I weight
If