Message ID | 1320864338-9702-1-git-send-email-peter.maydell@linaro.org |
---|---|
State | Accepted |
Commit | 096685fc2a955ea17d5363ab452e301be2b43873 |
Headers | show |
On 11/09/2011 12:45 PM, Peter Maydell wrote: > Avoid a crash due to null pointer dereference if a guest attempts > to access banked registers for a nonexistent bank. Spotted by > Coverity (see bug 887883). > > Signed-off-by: Peter Maydell<peter.maydell@linaro.org> Applied. Thanks. Regards, Anthony Liguori > --- > hw/omap_intc.c | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/hw/omap_intc.c b/hw/omap_intc.c > index 0f7fd9d..45efa25 100644 > --- a/hw/omap_intc.c > +++ b/hw/omap_intc.c > @@ -398,6 +398,9 @@ static uint64_t omap2_inth_read(void *opaque, target_phys_addr_t addr, > if (bank_no< s->nbanks) { > offset&= ~0x60; > bank =&s->bank[bank_no]; > + } else { > + OMAP_BAD_REG(addr); > + return 0; > } > } > > @@ -476,6 +479,9 @@ static void omap2_inth_write(void *opaque, target_phys_addr_t addr, > if (bank_no< s->nbanks) { > offset&= ~0x60; > bank =&s->bank[bank_no]; > + } else { > + OMAP_BAD_REG(addr); > + return; > } > } >
diff --git a/hw/omap_intc.c b/hw/omap_intc.c index 0f7fd9d..45efa25 100644 --- a/hw/omap_intc.c +++ b/hw/omap_intc.c @@ -398,6 +398,9 @@ static uint64_t omap2_inth_read(void *opaque, target_phys_addr_t addr, if (bank_no < s->nbanks) { offset &= ~0x60; bank = &s->bank[bank_no]; + } else { + OMAP_BAD_REG(addr); + return 0; } } @@ -476,6 +479,9 @@ static void omap2_inth_write(void *opaque, target_phys_addr_t addr, if (bank_no < s->nbanks) { offset &= ~0x60; bank = &s->bank[bank_no]; + } else { + OMAP_BAD_REG(addr); + return; } }
Avoid a crash due to null pointer dereference if a guest attempts to access banked registers for a nonexistent bank. Spotted by Coverity (see bug 887883). Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- hw/omap_intc.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)