diff options
| author | Paul Buetow <paul@buetow.org> | 2026-06-01 15:53:26 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-06-01 15:53:26 +0300 |
| commit | 5057bd968b33fcb4bcf337730e961e53fcb54645 (patch) | |
| tree | 3bc47c6416ff5938bedfa46e2bab82e06803b7de /docs/syscall-tracing-plan.md | |
| parent | 04c0c9abbf079922ce312fe786bdc9986c31b665 (diff) | |
fix(classify): msgsnd returns status, not bytes — make ret UNCLASSIFIED
msgsnd(2) returns 0 on success or -1 on error; the payload size msgsz is
an INPUT argument, never the return value. It was wrongly listed in
retClassifications as WriteClassified, which made the stats engine treat
its 0 return as "bytes written". Remove it so its return stays
UNCLASSIFIED, consistent with its SysV IPC siblings (msgrcv legitimately
stays ReadClassified because it returns a received byte count).
Regenerated tracepoints/docs accordingly. Verified: mage generate
idempotent, mage build OK, internal/generate tests pass, and the
TestSysVMsgBasic integration test (added in task 7i0) still passes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'docs/syscall-tracing-plan.md')
| -rw-r--r-- | docs/syscall-tracing-plan.md | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/docs/syscall-tracing-plan.md b/docs/syscall-tracing-plan.md index 822f363..2225d48 100644 --- a/docs/syscall-tracing-plan.md +++ b/docs/syscall-tracing-plan.md @@ -94,7 +94,7 @@ Payload bytes classified by return value: - ReadClassified: `fgetxattr`, `flistxattr`, `getdents`, `getdents64`, `getrandom`, `getxattr`, `getxattrat`, `lgetxattr`, `listxattr`, `listxattrat`, `llistxattr`, `mq_timedreceive`, `msgrcv`, `pread64`, `preadv`, `preadv2`, `process_vm_readv`, `read`, `readlink`, `readlinkat`, `readv`, `recvfrom`, `recvmsg`, `syslog` - TransferClassified: `copy_file_range`, `sendfile64`, `splice`, `tee`, `vmsplice` -- WriteClassified: `mq_timedsend`, `msgsnd`, `process_vm_writev`, `pwrite64`, `pwritev`, `pwritev2`, `sendmsg`, `sendto`, `write`, `writev` +- WriteClassified: `mq_timedsend`, `process_vm_writev`, `pwrite64`, `pwritev`, `pwritev2`, `sendmsg`, `sendto`, `write`, `writev` All other traced syscalls are treated as non-bytes for throughput accounting. Memory extent is tracked separately via address-space metrics. |
