diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h index 7a9398e..7b29bc6 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h @@ -121,7 +121,7 @@ struct hrtimer { #endif #ifdef CONFIG_TIMER_STATS void *start_site; - char start_comm[16]; + char start_comm[12]; int start_pid; #endif }; diff --git a/include/linux/timer.h b/include/linux/timer.h index 78cf899..2556358 100644 --- a/include/linux/timer.h +++ b/include/linux/timer.h @@ -17,7 +17,7 @@ struct timer_list { struct tvec_t_base_s *base; #ifdef CONFIG_TIMER_STATS void *start_site; - char start_comm[16]; + char start_comm[12]; int start_pid; #endif }; diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c index e65dd0b..2349c2b 100644 --- a/kernel/hrtimer.c +++ b/kernel/hrtimer.c @@ -632,7 +632,7 @@ void __timer_stats_hrtimer_set_start_info(struct hrtimer *timer, void *addr) return; timer->start_site = addr; - memcpy(timer->start_comm, current->comm, TASK_COMM_LEN); + memcpy(timer->start_comm, current->comm, sizeof(timer->start_comm)); timer->start_pid = current->pid; } #endif @@ -1006,7 +1006,7 @@ void hrtimer_init(struct hrtimer *timer, clockid_t clock_id, #ifdef CONFIG_TIMER_STATS timer->start_site = NULL; timer->start_pid = -1; - memset(timer->start_comm, 0, TASK_COMM_LEN); + memset(timer->start_comm, 0, sizeof(timer->start_comm)); #endif } EXPORT_SYMBOL_GPL(hrtimer_init); diff --git a/kernel/time/timer_list.c b/kernel/time/timer_list.c index 12c5f4c..2259b55 100644 --- a/kernel/time/timer_list.c +++ b/kernel/time/timer_list.c @@ -50,7 +50,7 @@ static void print_timer(struct seq_file *m, struct hrtimer *timer, int idx, u64 now) { #ifdef CONFIG_TIMER_STATS - char tmp[TASK_COMM_LEN + 1]; + char tmp[sizeof(timer->start_comm) + 1]; #endif SEQ_printf(m, " #%d: ", idx); print_name_offset(m, timer); @@ -60,8 +60,8 @@ print_timer(struct seq_file *m, struct hrtimer *timer, int idx, u64 now) #ifdef CONFIG_TIMER_STATS SEQ_printf(m, ", "); print_name_offset(m, timer->start_site); - memcpy(tmp, timer->start_comm, TASK_COMM_LEN); - tmp[TASK_COMM_LEN] = 0; + memcpy(tmp, timer->start_comm, sizeof(timer->start_comm)); + tmp[sizeof(timer->start_comm)] = 0; SEQ_printf(m, ", %s/%d", tmp, timer->start_pid); #endif SEQ_printf(m, "\n"); diff --git a/kernel/timer.c b/kernel/timer.c index a05817c..c7705dd 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -303,7 +303,7 @@ void __timer_stats_timer_set_start_info(struct timer_list *timer, void *addr) return; timer->start_site = addr; - memcpy(timer->start_comm, current->comm, TASK_COMM_LEN); + memcpy(timer->start_comm, current->comm, sizeof(timer->start_comm)); timer->start_pid = current->pid; } @@ -336,7 +336,7 @@ void fastcall init_timer(struct timer_list *timer) #ifdef CONFIG_TIMER_STATS timer->start_site = NULL; timer->start_pid = -1; - memset(timer->start_comm, 0, TASK_COMM_LEN); + memset(timer->start_comm, 0, sizeof(timer->start_comm)); #endif } EXPORT_SYMBOL(init_timer);