hw/arm_gic.c: Ignore attempts to complete nonexistent IRQs
commit217bfb445b54db618a30f3a39170bebd9fd9dbf2
authorPeter Maydell <peter.maydell@linaro.org>
Thu, 1 Dec 2011 18:37:17 +0000 (1 19:37 +0100)
committerAndrzej Zaborowski <balrog@zabor.org>
Mon, 5 Dec 2011 20:38:56 +0000 (5 21:38 +0100)
tree2d262345822f5271ea2c6977b3ce484d06b4b7db
parent21d89f841a8ff547cfe7ba97952fe4d5054b0421
hw/arm_gic.c: Ignore attempts to complete nonexistent IRQs

Ignore attempts to complete non-existent IRQs; this fixes a buffer
overrun if the guest writes a bad value to the GICC_EOIR register.
(This case is UNPREDICTABLE so ignoring it is a valid choice.)
Note that doing nothing if the guest writes 1023 to this register
is not in fact a change in behaviour: the old code would also
always do nothing in this case but in a non-obvious way.
(The buffer overrun was noted by Coverity, see bug 887883.)

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andrzej Zaborowski <andrew.zaborowski@intel.com>
hw/arm_gic.c