From dfa5ec89df7acecb29d8888e32f52455b019e815 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roger=20Pau=20Monn=C3=A9?= Date: Tue, 27 Mar 2018 10:27:46 +0200 Subject: [PATCH] vpci/msi: fix size of the vectors fields MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The current size (5bits) is not enough to store the maximum number of vectors (32), bump it by one bit. Also change the layout so that 'vectors' is aligned to a 8bit boundary. Note that the size of the struct is still the same. Coverity ID: 1430810 Signed-off-by: Roger Pau Monné Reviewed-by: Jan Beulich --- xen/include/xen/vpci.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index cb39e0ebea..29616624ad 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -100,15 +100,15 @@ struct vpci { /* Data. */ uint16_t data; /* Maximum number of vectors supported by the device. */ - uint8_t max_vectors : 5; - /* Enabled? */ - bool enabled : 1; + uint8_t max_vectors : 6; /* Supports per-vector masking? */ bool masking : 1; /* 64-bit address capable? */ bool address64 : 1; /* Number of vectors configured. */ - uint8_t vectors : 5; + uint8_t vectors : 6; + /* Enabled? */ + bool enabled : 1; /* Arch-specific data. */ struct vpci_arch_msi arch; } *msi; -- 2.30.2