diff options
| author | zy <[email protected]> | 2023-12-18 12:46:39 -0500 |
|---|---|---|
| committer | zy <[email protected]> | 2023-12-18 12:46:39 -0500 |
| commit | 357df1be9c0c614fe8b2f0d288a500ed37d66916 (patch) | |
| tree | 870465679543c42cb6879ee44d4b1174c3c80184 /source | |
| parent | fa0eb8b3e777560caf814980428125fb892d913e (diff) | |
monitor_user: tgid -> tid
Diffstat (limited to 'source')
| -rw-r--r-- | source/module/monitor_timer.h | 25 | ||||
| -rw-r--r-- | source/uapi/monitor_user.h | 1 |
2 files changed, 15 insertions, 11 deletions
diff --git a/source/module/monitor_timer.h b/source/module/monitor_timer.h index c62c463..c8b5df5 100644 --- a/source/module/monitor_timer.h +++ b/source/module/monitor_timer.h @@ -3,7 +3,7 @@ #define MAX_TIMER_NUM (128) // max timer number #define TIMER_MAX_WATCH_NUM (32) // A timer max watch number at once time -#define MAX_NAME_LEN (127) // max name length +#define MAX_NAME_LEN (127) // max name length typedef struct { pid_t task_id; // current process id @@ -11,9 +11,9 @@ typedef struct { void *ptr; // virtual address int length_byte; // byte long long threshold; // threshold value - unsigned char is_unsigned; // unsigned flag (true: unsigned, false: signed) - unsigned char above_threshold; // reverse flag (true: >, false: <) - unsigned long time_ns; // timer interval (ns) + unsigned char is_unsigned; // unsigned flag (true: unsigned, false: signed) + unsigned char above_threshold; // reverse flag (true: >, false: <) + unsigned long time_ns; // timer interval (ns) } watch_arg; typedef struct { @@ -23,9 +23,9 @@ typedef struct { void *kptr; // kernel address + offset int length_byte; // byte long long threshold; // threshold value - long long true_value; // target true value | available after reach threshold + long long true_value; // target true value | available after reach threshold unsigned char is_unsigned; // unsigned flag (true: unsigned, false: signed) - unsigned char above_threshold; // reverse flag (true: >, false: <) + unsigned char above_threshold; // reverse flag (true: >, false: <) } kernel_watch_arg; typedef struct { @@ -34,18 +34,20 @@ typedef struct { ktime_t kt; // hrTimer time unsigned sentinel; // sentinel kernel_watch_arg - k_watch_args[TIMER_MAX_WATCH_NUM]; // all watched kernel_watch_arg - int threshold_over_count; // all over threshold number, - // 0 means no handle needed + k_watch_args[TIMER_MAX_WATCH_NUM]; // all watched kernel_watch_arg + int threshold_over_count; // all over threshold number, + // 0 means no handle needed int threshold_buffer[TIMER_MAX_WATCH_NUM]; // struct work_struct wk; // for handle unsigned long long tv; // time + struct task_struct *task; // task pointer + // one timer one task(process) } kernel_watch_timer; // Global variable extern kernel_watch_timer kernel_wtimer_list[MAX_TIMER_NUM]; // all kernel_watch_timer -extern volatile int kernel_wtimer_num; // current kernel_watch_timer number +extern volatile int kernel_wtimer_num; // current kernel_watch_timer number // EXPORT_SYMBOL(kernel_wtimer_list); // export kernel_watch_timer_list // EXPORT_SYMBOL(kernel_wtimer_num); // export kernel_watch_timer_num @@ -62,7 +64,8 @@ unsigned char timer_add_watch(kernel_watch_timer *timer, kernel_watch_arg k_watch_arg); unsigned char timer_del_watch_by_pid(kernel_watch_timer *timer, pid_t pid); -extern enum hrtimer_restart check_variable_cb(struct hrtimer *timer); // callback +extern enum hrtimer_restart +check_variable_cb(struct hrtimer *timer); // callback void start_all_hrTimer(void); void cancel_all_hrTimer(void); diff --git a/source/uapi/monitor_user.h b/source/uapi/monitor_user.h index be17819..afa4cc3 100644 --- a/source/uapi/monitor_user.h +++ b/source/uapi/monitor_user.h @@ -7,6 +7,7 @@ #include <unistd.h> #define MAX_NAME_LEN (127) // max name length +#define gettid() (unsigned long)syscall(SYS_gettid) typedef struct { pid_t task_id; // current process id |
