aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/devices
diff options
context:
space:
mode:
authorChristophe Fontaine <christophe.fontaine@enea.com>2017-06-20 13:57:47 +0200
committerDamjan Marion <dmarion.lists@gmail.com>2017-06-29 11:40:45 +0000
commit26054ea1d1bad8d0d383bac59bfbe50912aee146 (patch)
treed6ecab240cfad5778691bd5842c1f499cb662009 /src/vnet/devices
parent5c20a0131a6a2516c14d5ccfc6db90fd13ec8a33 (diff)
Fix SIGBUS on aarch64
A call to 'clib_smp_swap (&((dq)->interrupt_pending), 0)' was creating a SIGBUS. Instead of making dq->interrupt_pending aligned on 64bits, we reduce the size from uword (u64) to u32, as the number of pending interrupts will never go above max of u32. Change-Id: Ifa5a6d3b7adee222329a671be01305cf50853b33 Signed-off-by: Christophe Fontaine <christophe.fontaine@enea.com>
Diffstat (limited to 'src/vnet/devices')
-rw-r--r--src/vnet/devices/devices.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vnet/devices/devices.h b/src/vnet/devices/devices.h
index f1f7e778460..b74e3713dfc 100644
--- a/src/vnet/devices/devices.h
+++ b/src/vnet/devices/devices.h
@@ -61,7 +61,7 @@ typedef struct
u32 dev_instance;
u16 queue_id;
vnet_hw_interface_rx_mode mode;
- uword interrupt_pending;
+ u32 interrupt_pending;
} vnet_device_and_queue_t;
typedef struct