linuxkpi: Update struct irq_work

The previous `llnode` field is moved inside another field `node`.

This `node` field is a `struct __call_single_node` in Linux. Here, we
simply add an anonymous struct with the `llnode` field inside. That
field's new name is `llist` now.

V2: Use an anonymous union to keep the structure backward compatible
    with drivers using the previous `llnode` field. This was suggested
    by wufl@ and hselasky@. Thank you!

Reviewed by:	manu
Approved by:	manu
Differential Revision:	https://reviews.freebsd.org/D36955
This commit is contained in:
Jean-Sébastien Pédron
2022-11-11 18:32:58 +01:00
parent bfe6bfd79e
commit f021c5c4a1
@@ -51,7 +51,12 @@ typedef void (*irq_work_func_t)(struct irq_work *);
struct irq_work {
struct task irq_task;
struct llist_node llnode;
union {
struct llist_node llnode;
struct {
struct llist_node llist;
} node;
};
irq_work_func_t func;
};