Linux I/O monitoring for Netatalk performance testing. More...
Functions | |
| int32_t | check_proc_io_availability (void) |
| pid_t | find_process_pid (const char *process_name, const char *username, int32_t filter_by_cmdline) |
| void | capture_io_values (int32_t is_start) |
| uint64_t | iodiff_io (pid_t pid, int32_t is_write) |
| void | init_io_monitoring (const char *username) |
Variables | |
| bool | io_monitoring_enabled = false |
| pid_t | afpd_pid = 0 |
| pid_t | cnid_dbd_pid = 0 |
| uint64_t | afpd_start_reads = 0 |
| uint64_t | afpd_start_writes = 0 |
| uint64_t | cnid_start_reads = 0 |
| uint64_t | cnid_start_writes = 0 |
| uint64_t | afpd_end_reads = 0 |
| uint64_t | afpd_end_writes = 0 |
| uint64_t | cnid_end_reads = 0 |
| uint64_t | cnid_end_writes = 0 |
Linux I/O monitoring for Netatalk performance testing.
Monitors system call I/O statistics for afpd and cnid_dbd processes during tests. Uses /proc_io filesystem (a secondary mount of proc) to track read/write syscalls. Automatically discovers target processes by name and user, handling both privilege-dropped processes (afpd) and root processes with user arguments (cnid_dbd). Provides before/after test IO metrics to measure actual filesystem activity during AFP operations.
| void capture_io_values | ( | int32_t | is_start | ) |
| int32_t check_proc_io_availability | ( | void | ) |
| pid_t find_process_pid | ( | const char * | process_name, |
| const char * | username, | ||
| int32_t | filter_by_cmdline ) |
| void init_io_monitoring | ( | const char * | username | ) |
| uint64_t iodiff_io | ( | pid_t | pid, |
| int32_t | is_write ) |
| uint64_t afpd_end_reads = 0 |
| uint64_t afpd_end_writes = 0 |
| pid_t afpd_pid = 0 |
| uint64_t afpd_start_reads = 0 |
| uint64_t afpd_start_writes = 0 |
| pid_t cnid_dbd_pid = 0 |
| uint64_t cnid_end_reads = 0 |
| uint64_t cnid_end_writes = 0 |
| uint64_t cnid_start_reads = 0 |
| uint64_t cnid_start_writes = 0 |
| bool io_monitoring_enabled = false |