From: Jan Beulich Date: Tue, 14 Jan 2020 11:03:47 +0000 (+0100) Subject: IRQ: u16 is too narrow for an event channel number X-Git-Tag: archive/raspbian/4.14.0+80-gd101b417b7-1+rpi1^2~63^2~901 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=892b9dcebdb7f646657e11cfdd95a385107bbefa;p=xen.git IRQ: u16 is too narrow for an event channel number FIFO event channels allow ports up to 2^17, so we need to use a wider field in struct pirq. Move "masked" such that it may share the 8-byte slot with struct arch_pirq on 64-bit arches, rather than leaving a 7-byte hole in all cases. Take the opportunity and also add a comment regarding "arch" placement within the structure. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- diff --git a/xen/include/xen/irq.h b/xen/include/xen/irq.h index 0f91884d57..59d5e45bb0 100644 --- a/xen/include/xen/irq.h +++ b/xen/include/xen/irq.h @@ -127,9 +127,10 @@ struct vcpu; struct pirq { int pirq; - u16 evtchn; - bool_t masked; + evtchn_port_t evtchn; struct rcu_head rcu_head; + bool masked; + /* Architectures may require this field to be last. */ struct arch_pirq arch; };