函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\irq\manage.c Create Date:2022-07-27 11:09:17
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:__synchronize_hardirq

函数原型:static void __synchronize_hardirq(struct irq_desc *desc, bool sync_chip)

返回类型:void

参数:

类型参数名称
struct irq_desc *desc
boolsync_chip
40  irqd等于irq_desc_get_irq_data(desc)
43  循环
50 irqd_irq_inprogress( & irq_data)循环
51  cpu_relax()
54  raw_spin_lock_irqsave( & 自旋锁, flags)
55  inprogress等于irqd_irq_inprogress( & irq_data)
62  如果非inprogresssync_chip
70  raw_spin_unlock_irqrestore( & 自旋锁, flags)
73 inprogress循环
调用者
名称描述
synchronize_hardirqsynchronize_hardirq - wait for pending hard IRQ handlers (on other CPUs)*@irq: interrupt number to wait for* This function waits for any pending hard IRQ handlers for this* interrupt to complete before returning
synchronize_irqsynchronize_irq - wait for pending IRQ handlers (on other CPUs)*@irq: interrupt number to wait for* This function waits for any pending IRQ handlers for this interrupt* to complete before returning. If you use this function while
__free_irqInternal function to unregister an irqaction - used to free* regular and special interrupts that are part of the architecture.