#include #include #include #include #include #include #include "litmus.h" #define __NR_request_mode 408 static int keep_running; void sig_handler(int signum) { int ret; usleep(100000); ret = syscall(__NR_request_mode, 0); usleep(1000000); keep_running = 0; } int main(int argc, char* argv[]) { int ret, req_mode = 0; int interval_ms; int max_mode = 9; signal(SIGINT, sig_handler); if (argc == 2) { max_mode = atoi(argv[1]); printf("%d\n", max_mode); } keep_running = 1; usleep(500000); // ms while (keep_running) { req_mode = (req_mode%max_mode)+1; if (keep_running) ret = syscall(__NR_request_mode, req_mode); interval_ms = rand() % 1000 - 500; // ms usleep(1000*(1000 + interval_ms)); } return ret; }