Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\irq\chip.c Create Date:2022-07-28 10:11:33
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:handle_percpu_devid_irq - Per CPU local irq handler with per cpu dev ids*@desc: the interrupt description structure for this irq* Per CPU interrupts on SMP machines without locking requirements

Proto:void handle_percpu_devid_irq(struct irq_desc *desc)

Type:void

Parameter:

TypeParameterName
struct irq_desc *desc
925  chip = irq_desc_get_chip(desc)
926  action = IRQ action list
927  irq = irq_desc_get_irq(desc)
934  __kstat_incr_irqs_this_cpu(desc)
936  If irq_ack Then irq_ack( & irq_data)
939  If Value is more likely to compile time(action) Then
940  q_handler_entry - called immediately before the irq action handler*@irq: irq number*@action: pointer to struct irqaction* The struct irqaction pointed to by @action contains various* information about the handler, including the device name,
941  res = handler(irq, raw_cpu_ptr(percpu_dev_id))
942  q_handler_exit - called immediately after the irq action handler returns*@irq: irq number*@action: pointer to struct irqaction*@ret: return value* If the @ret value is set to IRQ_HANDLED, then we know that the corresponding
943  Else
944  cpu = smp_processor_id()
945  enabled = pumask_test_cpu - test for a cpu in a cpumask*@cpu: cpu number (< nr_cpu_ids)*@cpumask: the cpumask pointer* Returns 1 if @cpu is set in @cpumask, else returns 0
947  If enabled Then irq_percpu_disable(desc, cpu)
950  pr_err_once("Spurious%s percpu IRQ%u on CPU%u\n", enabled ? " and unmasked" : "", irq, cpu)
954  If irq_eoi Then irq_eoi( & irq_data)