hardirq.h

来自「《嵌入式系统设计与实例开发实验教材二源码》Linux内核移植与编译实验」· C头文件 代码 · 共 43 行

H
43
字号
#ifndef __ASM_SH_HARDIRQ_H#define __ASM_SH_HARDIRQ_H#include <linux/config.h>#include <linux/threads.h>/* entry.S is sensitive to the offsets of these fields */typedef struct {	unsigned int __softirq_pending;	unsigned int __local_irq_count;	unsigned int __local_bh_count;	unsigned int __syscall_count;	struct task_struct * __ksoftirqd_task;} ____cacheline_aligned irq_cpustat_t;#include <linux/irq_cpustat.h>	/* Standard mappings for irq_cpustat_t above *//* * Are we in an interrupt context? Either doing bottom half * or hardware interrupt processing? */#define in_interrupt() ({ int __cpu = smp_processor_id(); \	(local_irq_count(__cpu) + local_bh_count(__cpu) != 0); })#define in_irq() (local_irq_count(smp_processor_id()) != 0)#ifndef CONFIG_SMP#define hardirq_trylock(cpu)	(local_irq_count(cpu) == 0)#define hardirq_endlock(cpu)	do { } while (0)#define irq_enter(cpu, irq)	(local_irq_count(cpu)++)#define irq_exit(cpu, irq)	(local_irq_count(cpu)--)#define synchronize_irq()	barrier()#else#error Super-H SMP is not available#endif /* CONFIG_SMP */#endif /* __ASM_SH_HARDIRQ_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?