Lines Matching full:softirq

214 	struct osn_softirq	softirq;  member
359 osn_var->softirq.arrival_time = 0; in timerlat_softirq_exit()
360 osn_var->softirq.delta_start = 0; in timerlat_softirq_exit()
408 seq_puts(s, "# || / _----=> hardirq/softirq\n"); in print_osnoise_headers()
436 seq_puts(s, "# | / _---=> hardirq/softirq\n"); in print_osnoise_headers()
524 seq_puts(s, "# || / _----=> hardirq/softirq\n"); in print_timerlat_headers()
540 seq_puts(s, "# | / _---=> hardirq/softirq\n"); in print_timerlat_headers()
706 * cond_move_softirq_delta_start - Forward the delta_start of a running softirq.
708 * If a softirq is preempted by an IRQ or NMI, its delta_start is pushed
716 if (osn_var->softirq.delta_start) in cond_move_softirq_delta_start()
717 osn_var->softirq.delta_start += duration; in cond_move_softirq_delta_start()
726 * If a noisy thread is preempted by an softirq, IRQ or NMI, its delta_start
741 * The irq, softirq and thread varaibles need to have its duration without
1018 * trace_softirq_entry_callback - Note the starting of a softirq
1020 * Save the starting time of a softirq. As softirqs are non-preemptive to
1021 * other softirqs, it is safe to use a single variable (ons_var->softirq)
1024 * softirq exit handler. See cond_move_softirq_delta_start().
1036 osn_var->softirq.arrival_time = time_get(); in trace_softirq_entry_callback()
1037 set_int_safe_time(osn_var, &osn_var->softirq.delta_start); in trace_softirq_entry_callback()
1038 osn_var->softirq.count++; in trace_softirq_entry_callback()
1044 * trace_softirq_exit_callback - Note the end of an softirq
1046 * Computes the duration of the softirq noise, and trace it. Also discounts the
1061 duration = get_int_safe_duration(osn_var, &osn_var->softirq.delta_start); in trace_softirq_exit_callback()
1062 trace_softirq_noise(vec_nr, osn_var->softirq.arrival_time, duration); in trace_softirq_exit_callback()
1064 osn_var->softirq.arrival_time = 0; in trace_softirq_exit_callback()
1068 * hook_softirq_events - Hook softirq handling events
1070 * This function hooks the softirq related callbacks to the respective trace
1094 * unhook_softirq_events - Unhook softirq handling events
1096 * This function hooks the softirq related callbacks to the respective trace
1106 * softirq are threads on the PREEMPT_RT mode.
1318 s->softirq_count = osn_var->softirq.count; in save_osn_sample_stats()
1334 s->softirq_count = osn_var->softirq.count - s->softirq_count; in diff_osn_sample_stats()
1734 * Enable the osnoise: events for thread an softirq. in timerlat_irq()
1742 * a thread, and potentially preempting a softirq. in timerlat_irq()
1745 * preempted thread (and maybe softirq), but how much time they will in timerlat_irq()
1748 * To get the correct (net) delay added by the softirq, its delta_start in timerlat_irq()
1753 * The thread follows the same principle. However, if a softirq is in timerlat_irq()
1754 * running, the thread needs to receive the softirq delta_start. The in timerlat_irq()
1755 * reason being is that the softirq will be the last to be unfolded, in timerlat_irq()
1761 if (!IS_ENABLED(CONFIG_PREEMPT_RT) && osn_var->softirq.delta_start) { in timerlat_irq()
1763 &osn_var->softirq.delta_start); in timerlat_irq()
1765 copy_int_safe_time(osn_var, &osn_var->softirq.delta_start, in timerlat_irq()