From mboxrd@z Thu Jan 1 00:00:00 1970 From: jdesfossez@efficios.com (Julien Desfossez) Date: Sat, 30 Apr 2016 11:09:25 -0400 Subject: [lttng-dev] [PATCH lttng-modules v7 0/5] Extract payload from polling syscalls Message-ID: <1462028970-16870-1-git-send-email-jdesfossez@efficios.com> Patch serie to extract the payload of the polling system calls on x86 and ARM (32 and 64-bit). The concerned system calls are select, pselect6, poll, ppoll, epoll_ctl, epoll_wait, epoll_pwait. Changes from v6: - Fix risk of uint overflow on bogus input - Fix endianness problem on raw event fields Changes from v5: - Use GFP_ATOMIC | GFP_NOWAIT - Removed a lot of code duplication by factoring all in macros (422 lines less compared to previous PR, that is 361 backslashes added !) - Bugfix from v5 review Changes from v4: - Use GFP_ATOMIC memory for dynamic allocation (because we cannot sleep in TP) - Limit the allocated memory to one page - Set an overflow flag if we cannot allocate enough memory - Fix endianness problem for select - Bugfix from v4 review Changes from v3: - Use dynamic allocation for select - Bugfix from v3 review - Cleanup epoll_wait error handling Changes from v2: - Make sure all user-controlled data is handled safely in the kernel - Allocate memory instead of using the stack for arbitrarily large data - Only extract the standard event flags and output the raw event value as hex Julien Desfossez (5): Add ctf_integer_bitfield_type Extract the FD sets in select and pselect6 Extract the FDs and flags from poll and ppoll Extract the payload for epoll_ctl Extract the payload of epoll_wait/epoll_pwait .../syscalls/headers/syscalls_pointers_override.h | 821 +++++++++++++++++++++ probes/lttng-events-write.h | 8 + 2 files changed, 829 insertions(+) -- 1.9.1