diff options
| author | Yichong Chen <chenyichong@uniontech.com> | 2026-07-31 10:18:27 +0800 |
|---|---|---|
| committer | Jan Kara <jack@suse.cz> | 2026-07-31 14:18:17 +0200 |
| commit | 68615158c12de36220446dfea5cfdf9ba6c19690 (patch) | |
| tree | a703e68b0078485206e6a9cc55d82a70d3c70ea4 /tools/perf/scripts/python/bin/stackcollapse-report | |
| parent | d7f1cf5be33ef0175a4e8ed8687aeb98fb00a851 (diff) | |
fanotify: report full event length for FIONREAD
fanotify_ioctl(FIONREAD) reports the number of bytes available to read
from the event queue. It currently accounts only FAN_EVENT_METADATA_LEN
for each queued event.
That underestimates events that carry additional information records, such
as FAN_REPORT_DFID_NAME events. A userspace program that uses FIONREAD to
size its read buffer can receive a length that is smaller than the next
event. Reading with that buffer then fails with -EINVAL, while a larger
buffer succeeds and reports a larger metadata.event_len.
Use fanotify_event_len() when summing queued events so FIONREAD includes
all info records.
Fixes: 5e469c830fdb ("fanotify: copy event fid info to user")
Signed-off-by: Yichong Chen <chenyichong@uniontech.com>
Link: https://patch.msgid.link/20260731021827.602479-1-chenyichong@uniontech.com
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-report')
0 files changed, 0 insertions, 0 deletions
