/linux-6.3-rc2/include/linux/ |
A D | irq_work.h | 17 struct irq_work { struct 19 void (*func)(struct irq_work *); argument 23 #define __IRQ_WORK_INIT(_func, _flags) (struct irq_work){ \ argument 34 struct irq_work name = IRQ_WORK_INIT(_f) 37 void init_irq_work(struct irq_work *work, void (*func)(struct irq_work *)) in init_irq_work() argument 42 static inline bool irq_work_is_pending(struct irq_work *work) in irq_work_is_pending() 47 static inline bool irq_work_is_busy(struct irq_work *work) in irq_work_is_busy() 52 static inline bool irq_work_is_hard(struct irq_work *work) in irq_work_is_hard() 57 bool irq_work_queue(struct irq_work *work); 58 bool irq_work_queue_on(struct irq_work *work, int cpu); [all …]
|
/linux-6.3-rc2/kernel/ |
A D | irq_work.c | 38 static void irq_work_wake(struct irq_work *entry) in irq_work_wake() 43 static DEFINE_PER_CPU(struct irq_work, irq_work_wakeup) = 55 static bool irq_work_claim(struct irq_work *work) in irq_work_claim() 78 static void __irq_work_queue_local(struct irq_work *work) in __irq_work_queue_local() 106 bool irq_work_queue(struct irq_work *work) in irq_work_queue() 127 bool irq_work_queue_on(struct irq_work *work, int cpu) in irq_work_queue_on() 193 struct irq_work *work = arg; in irq_work_single() 227 struct irq_work *work, *tmp; in irq_work_run_list() 276 void irq_work_sync(struct irq_work *work) in irq_work_sync()
|
/linux-6.3-rc2/kernel/bpf/ |
A D | mmap_unlock_work.h | 11 struct irq_work irq_work; member 32 if (irq_work_is_busy(&work->irq_work)) { in bpf_mmap_unlock_get_irq_work() 61 irq_work_queue(&work->irq_work); in bpf_mmap_unlock_mm()
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gt/ |
A D | intel_breadcrumbs.c | 48 irq_work_queue(&b->irq_work); in __intel_breadcrumbs_arm_irq() 165 static void signal_irq_work(struct irq_work *work) in signal_irq_work() 167 struct intel_breadcrumbs *b = container_of(work, typeof(*b), irq_work); in signal_irq_work() 281 init_irq_work(&b->irq_work, signal_irq_work); in intel_breadcrumbs_create() 313 irq_work_sync(&b->irq_work); in __intel_breadcrumbs_park() 316 signal_irq_work(&b->irq_work); in __intel_breadcrumbs_park() 326 irq_work_sync(&b->irq_work); in intel_breadcrumbs_free() 341 irq_work_queue(&b->irq_work); in irq_signal_request() 403 irq_work_queue(&b->irq_work); in insert_breadcrumb()
|
A D | intel_breadcrumbs_types.h | 44 struct irq_work irq_work; /* for use from inside irq_lock */ member
|
/linux-6.3-rc2/drivers/power/supply/ |
A D | max14656_charger_detector.c | 83 struct delayed_work irq_work; member 137 container_of(work, struct max14656_chip, irq_work.work); in max14656_irq_worker() 165 schedule_delayed_work(&chip->irq_work, msecs_to_jiffies(100)); in max14656_irq() 281 ret = devm_delayed_work_autocancel(dev, &chip->irq_work, in max14656_probe() 297 schedule_delayed_work(&chip->irq_work, msecs_to_jiffies(2000)); in max14656_probe()
|
/linux-6.3-rc2/samples/trace_printk/ |
A D | trace-printk.c | 16 static struct irq_work irqwork; 18 static void trace_printk_irq_work(struct irq_work *work) in trace_printk_irq_work()
|
/linux-6.3-rc2/drivers/cpufreq/ |
A D | cpufreq_governor.c | 261 static void dbs_irq_work(struct irq_work *irq_work) in dbs_irq_work() argument 265 policy_dbs = container_of(irq_work, struct policy_dbs_info, irq_work); in dbs_irq_work() 319 irq_work_queue(&policy_dbs->irq_work); in dbs_update_util_handler() 363 init_irq_work(&policy_dbs->irq_work, dbs_irq_work); in alloc_policy_dbs_info() 554 irq_work_sync(&policy_dbs->irq_work); in cpufreq_dbs_governor_stop()
|
A D | cppc_cpufreq.c | 79 struct irq_work irq_work; member 140 static void cppc_irq_work(struct irq_work *irq_work) in cppc_irq_work() argument 144 cppc_fi = container_of(irq_work, struct cppc_freq_invariance, irq_work); in cppc_irq_work() 156 irq_work_queue(&cppc_fi->irq_work); in cppc_scale_freq_tick() 177 init_irq_work(&cppc_fi->irq_work, cppc_irq_work); in cppc_cpufreq_cpu_fie_init() 218 irq_work_sync(&cppc_fi->irq_work); in cppc_cpufreq_cpu_fie_exit()
|
A D | cpufreq_governor.h | 89 struct irq_work irq_work; member
|
/linux-6.3-rc2/kernel/sched/ |
A D | cpufreq_schedutil.c | 29 struct irq_work irq_work; member 113 irq_work_queue(&sg_policy->irq_work); in sugov_deferred_update() 490 static void sugov_irq_work(struct irq_work *irq_work) in sugov_irq_work() argument 494 sg_policy = container_of(irq_work, struct sugov_policy, irq_work); in sugov_irq_work() 620 init_irq_work(&sg_policy->irq_work, sugov_irq_work); in sugov_kthread_create() 803 irq_work_sync(&sg_policy->irq_work); in sugov_stop()
|
/linux-6.3-rc2/drivers/extcon/ |
A D | extcon-ptn5150.c | 54 struct work_struct irq_work; member 119 struct ptn5150_info, irq_work); in ptn5150_irq_work() 176 schedule_work(&info->irq_work); in ptn5150_irq_handler() 220 cancel_work_sync(&info->irq_work); in ptn5150_work_sync_and_put() 254 INIT_WORK(&info->irq_work, ptn5150_irq_work); in ptn5150_i2c_probe()
|
A D | extcon-max8997.c | 119 struct work_struct irq_work; member 511 struct max8997_muic_info, irq_work); in max8997_muic_irq_work() 571 schedule_work(&info->irq_work); in max8997_muic_irq_handler() 653 INIT_WORK(&info->irq_work, max8997_muic_irq_work); in max8997_muic_probe() 654 ret = devm_work_autocancel(&pdev->dev, &info->irq_work, in max8997_muic_probe()
|
A D | extcon-max14577.c | 82 struct work_struct irq_work; member 484 struct max14577_muic_info, irq_work); in max14577_muic_irq_work() 598 schedule_work(&info->irq_work); in max14577_muic_irq_handler() 677 ret = devm_work_autocancel(&pdev->dev, &info->irq_work, in max14577_muic_probe()
|
A D | extcon-rt8973a.c | 53 struct work_struct irq_work; member 409 struct rt8973a_muic_info, irq_work); in rt8973a_muic_irq_work() 483 schedule_work(&info->irq_work); in rt8973a_muic_irq_handler() 575 INIT_WORK(&info->irq_work, rt8973a_muic_irq_work); in rt8973a_muic_i2c_probe()
|
/linux-6.3-rc2/drivers/net/wireless/quantenna/qtnfmac/ |
A D | shm_ipc.c | 49 irq_work); in qtnf_shm_ipc_irq_work() 62 queue_work(ipc->workqueue, &ipc->irq_work); in qtnf_shm_ipc_irq_inbound_handler() 112 INIT_WORK(&ipc->irq_work, qtnf_shm_ipc_irq_work); in qtnf_shm_ipc_init()
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gem/ |
A D | i915_gem_ttm_move.c | 294 struct irq_work irq_work; member 389 static void __memcpy_irq_work(struct irq_work *irq_work) in __memcpy_irq_work() argument 392 container_of(irq_work, typeof(*copy_work), irq_work); in __memcpy_irq_work() 410 init_irq_work(©_work->irq_work, __memcpy_irq_work); in __memcpy_cb() 411 irq_work_queue(©_work->irq_work); in __memcpy_cb()
|
/linux-6.3-rc2/arch/x86/kvm/ |
A D | pmu.c | 101 static void kvm_pmi_trigger_fn(struct irq_work *irq_work) in kvm_pmi_trigger_fn() argument 103 struct kvm_pmu *pmu = container_of(irq_work, struct kvm_pmu, irq_work); in kvm_pmi_trigger_fn() 144 irq_work_queue(&pmc_to_pmu(pmc)->irq_work); in __kvm_perf_overflow() 599 irq_work_sync(&pmu->irq_work); in kvm_pmu_reset() 609 init_irq_work(&pmu->irq_work, kvm_pmi_trigger_fn); in kvm_pmu_init()
|
/linux-6.3-rc2/drivers/media/cec/usb/pulse8/ |
A D | pulse8-cec.c | 181 struct work_struct irq_work; member 333 container_of(work, struct pulse8, irq_work); in pulse8_irq_work_handler() 422 schedule_work(&pulse8->irq_work); in pulse8_interrupt() 428 schedule_work(&pulse8->irq_work); in pulse8_interrupt() 439 schedule_work(&pulse8->irq_work); in pulse8_interrupt() 446 schedule_work(&pulse8->irq_work); in pulse8_interrupt() 642 cancel_work_sync(&pulse8->irq_work); in pulse8_cec_adap_free() 856 INIT_WORK(&pulse8->irq_work, pulse8_irq_work_handler); in pulse8_connect()
|
/linux-6.3-rc2/kernel/rcu/ |
A D | tree.h | 194 struct irq_work defer_qs_iw; /* Obtain later scheduler attention. */ 273 struct irq_work rcu_iw; /* Check for non-irq activity. */ 503 static void rcu_iw_handler(struct irq_work *iwp);
|
/linux-6.3-rc2/drivers/iio/trigger/ |
A D | iio-trig-sysfs.c | 18 struct irq_work work; 92 static void iio_sysfs_trigger_work(struct irq_work *work) in iio_sysfs_trigger_work()
|
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlxsw/ |
A D | i2c.c | 93 struct work_struct irq_work; member 569 mlxsw_i2c = container_of(work, struct mlxsw_i2c, irq_work); in mlxsw_i2c_work_handler() 577 mlxsw_core_schedule_work(&mlxsw_i2c->irq_work); in mlxsw_i2c_irq_handler() 605 INIT_WORK(&mlxsw_i2c->irq_work, mlxsw_i2c_work_handler); in mlxsw_i2c_irq_init() 622 cancel_work_sync(&mlxsw_i2c->irq_work); in mlxsw_i2c_irq_fini()
|
/linux-6.3-rc2/kernel/irq/ |
A D | irq_sim.c | 14 struct irq_work work; 100 static void irq_sim_handle_irq(struct irq_work *work) in irq_sim_handle_irq()
|
/linux-6.3-rc2/drivers/mfd/ |
A D | da903x.c | 66 struct work_struct irq_work; member 397 container_of(work, struct da903x_chip, irq_work); in da903x_irq_work() 419 (void)schedule_work(&chip->irq_work); in da903x_irq_handler() 509 INIT_WORK(&chip->irq_work, da903x_irq_work); in da903x_probe()
|
/linux-6.3-rc2/kernel/trace/ |
A D | ring_buffer.c | 413 struct irq_work work; 538 struct rb_irq_work irq_work; member 556 struct rb_irq_work irq_work; member 973 rbwork = &buffer->irq_work; in ring_buffer_wake_waiters() 984 rbwork = &cpu_buffer->irq_work; in ring_buffer_wake_waiters() 1018 work = &buffer->irq_work; in ring_buffer_wait() 1025 work = &cpu_buffer->irq_work; in ring_buffer_wait() 1128 work = &buffer->irq_work; in ring_buffer_poll_wait() 1135 work = &cpu_buffer->irq_work; in ring_buffer_poll_wait() 3188 if (buffer->irq_work.waiters_pending) { in rb_wakeups() [all …]
|