irq_infoRegular
4.4: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
4.8: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
4.10: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
4.13: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
4.15: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
4.18: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
5.0: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
5.3: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
5.4: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
5.8: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
union (anon) u;
};
5.11: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
spinlock_t lock;
union (anon) u;
};
5.13: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
raw_spinlock_t lock;
union (anon) u;
};
5.15: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
raw_spinlock_t lock;
union (anon) u;
};
5.19: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
raw_spinlock_t lock;
union (anon) u;
};
6.2: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
raw_spinlock_t lock;
union (anon) u;
};
6.5: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
raw_spinlock_t lock;
bool is_static;
union (anon) u;
};
6.8: ✅struct irq_info {
struct list_head list;
struct list_head eoi_list;
struct rcu_work rwork;
short int refcnt;
u8 spurious_cnt;
u8 is_accounted;
short int type;
u8 mask_reason;
u8 is_active;
unsigned int irq;
evtchn_port_t evtchn;
short unsigned int cpu;
short unsigned int eoi_cpu;
unsigned int irq_epoch;
u64 eoi_time;
raw_spinlock_t lock;
bool is_static;
union (anon) u;
};
arm64: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
armhf: ✅struct irq_info {
struct hlist_node node;
int irq;
spinlock_t lock;
struct list_head *head;
};
ppc64el: ✅struct irq_info {
struct hlist_node node;
int irq;
spinlock_t lock;
struct list_head *head;
};
riscv64: ✅struct irq_info {
struct hlist_node node;
int irq;
spinlock_t lock;
struct list_head *head;
};
aws: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
azure: ✅struct irq_info {
struct hlist_node node;
int irq;
spinlock_t lock;
struct list_head *head;
};
gcp: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
lowlatency: ✅struct irq_info {
struct list_head list;
int refcnt;
enum xen_irq_type type;
unsigned int irq;
unsigned int evtchn;
short unsigned int cpu;
union (anon) u;
};
Regular
4.4 and 4.8 ✅
4.8 and 4.10 ✅
4.10 and 4.13 ✅
4.13 and 4.15 ✅
4.15 and 4.18 ✅
4.18 and 5.0 ✅
5.0 and 5.3 ✅
5.3 and 5.4 ✅
5.4 and 5.8 ⚠️unsigned int evtchn ➡️ evtchn_port_t evtchn
5.8 and 5.11 ⚠️struct list_head eoi_list
u8 spurious_cnt
u8 is_accounted
u8 mask_reason
u8 is_active
short unsigned int eoi_cpu
unsigned int irq_epoch
u64 eoi_time
spinlock_t lock
int refcnt ➡️ short int refcnt
enum xen_irq_type type ➡️ short int type
5.11 and 5.13 ⚠️spinlock_t lock ➡️ raw_spinlock_t lock
5.13 and 5.15 ✅
5.15 and 5.19 ✅
5.19 and 6.2 ✅
6.2 and 6.5 ⚠️bool is_static
6.5 and 6.8 ⚠️struct rcu_work rwork
amd64 and arm64 ✅
amd64 and armhf ⚠️struct hlist_node node
spinlock_t lock
struct list_head *head
struct list_head list
int refcnt
enum xen_irq_type type
unsigned int evtchn
short unsigned int cpu
union (anon) u
unsigned int irq ➡️ int irq
amd64 and ppc64el ⚠️struct hlist_node node
spinlock_t lock
struct list_head *head
struct list_head list
int refcnt
enum xen_irq_type type
unsigned int evtchn
short unsigned int cpu
union (anon) u
unsigned int irq ➡️ int irq
amd64 and riscv64 ⚠️struct hlist_node node
spinlock_t lock
struct list_head *head
struct list_head list
int refcnt
enum xen_irq_type type
unsigned int evtchn
short unsigned int cpu
union (anon) u
unsigned int irq ➡️ int irq
generic and aws ✅
generic and azure ⚠️struct hlist_node node
spinlock_t lock
struct list_head *head
struct list_head list
int refcnt
enum xen_irq_type type
unsigned int evtchn
short unsigned int cpu
union (anon) u
unsigned int irq ➡️ int irq
generic and gcp ✅
generic and lowlatency ✅