diff --git a/drivers/android/vendor_hooks.c b/drivers/android/vendor_hooks.c index 6954bdfe4a44..918879fa091f 100644 --- a/drivers/android/vendor_hooks.c +++ b/drivers/android/vendor_hooks.c @@ -81,6 +81,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_dump_throttled_rt_tasks); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_printk_hotplug); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_jiffies_update); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_v3_set_affinity); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_set_affinity); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_v3_affinity_init); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_suspend_epoch_val); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_resume_epoch_val); diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index 5f22c9d65e57..c7983b64a5a9 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include @@ -815,6 +816,8 @@ static int gic_set_affinity(struct irq_data *d, const struct cpumask *mask_val, writeb_relaxed(gic_cpu_map[cpu], reg); irq_data_update_effective_affinity(d, cpumask_of(cpu)); + trace_android_vh_gic_set_affinity(d, mask_val, force, gic_cpu_map, reg); + return IRQ_SET_MASK_OK_DONE; } diff --git a/include/trace/hooks/gic.h b/include/trace/hooks/gic.h index e9d9fce0ee77..736f296db7a0 100644 --- a/include/trace/hooks/gic.h +++ b/include/trace/hooks/gic.h @@ -16,6 +16,11 @@ DECLARE_HOOK(android_vh_gic_resume, TP_PROTO(struct irq_domain *domain, void __iomem *dist_base), TP_ARGS(domain, dist_base)); +DECLARE_HOOK(android_vh_gic_set_affinity, + TP_PROTO(struct irq_data *d, const struct cpumask *mask_val, + bool force, u8 *gic_cpu_map, void __iomem *reg), + TP_ARGS(d, mask_val, force, gic_cpu_map, reg)); + #endif /* _TRACE_HOOK_GIC_H */ /* This part must be outside protection */ #include