All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] kvm: mpic: limit active IRQ sources to NUM_OUTPUTS
@ 2019-11-15  5:18 P J P
  2019-11-20  2:33 ` Paul Mackerras
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: P J P @ 2019-11-15  5:18 UTC (permalink / raw)
  To: kvm-ppc

From: P J P <pjp@fedoraproject.org>

openpic_src_write sets interrupt level 'src->output' masked with
ILR_INTTGT_MASK(=0xFF). It's then used to index 'dst->outputs_active'
array. With NUM_OUTPUTS=3, it may lead to OOB array access. Limit
active IRQ sources to < NUM_OUTPUTS.

Reported-by: Reno Robert <renorobert@gmail.com>
Signed-off-by: P J P <pjp@fedoraproject.org>
---
 arch/powerpc/kvm/mpic.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Update v2: limit IRQ sources to NUM_OUTPUTS
  -> https://www.spinics.net/lists/kvm-ppc/msg16554.html

diff --git a/arch/powerpc/kvm/mpic.c b/arch/powerpc/kvm/mpic.c
index fe312c160d97..fe4afd54c6e7 100644
--- a/arch/powerpc/kvm/mpic.c
+++ b/arch/powerpc/kvm/mpic.c
@@ -628,7 +628,7 @@ static inline void write_IRQreg_ilr(struct openpic *opp, int n_IRQ,
 	if (opp->flags & OPENPIC_FLAG_ILR) {
 		struct irq_source *src = &opp->src[n_IRQ];

-		src->output = val & ILR_INTTGT_MASK;
+		src->output = val % NUM_OUTPUTS;
 		pr_debug("Set ILR %d to 0x%08x, output %d\n", n_IRQ, src->idr,
 			src->output);

--
2.21.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-11-27  8:36 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-11-15  5:18 [PATCH v2] kvm: mpic: limit active IRQ sources to NUM_OUTPUTS P J P
2019-11-20  2:33 ` Paul Mackerras
2019-11-20 11:12 ` P J P
2019-11-20 21:41 ` Paul Mackerras
2019-11-21  4:57 ` P J P
2019-11-27  8:36 ` P J P

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.