Re: [PATCH] hw/dma: prevent overflow in soc_dma_set_request

2024-04-19 Thread Peter Maydell
On Tue, 9 Apr 2024 at 14:38, Peter Maydell wrote: > > On Tue, 9 Apr 2024 at 14:32, Anastasia Belova wrote: > > > > > > > > 09/04/24 15:02, Peter Maydell пишет: > > > On Tue, 9 Apr 2024 at 12:54, Anastasia Belova > > > wrote: > > >> ch->num can reach values up to 31. Add casting to > > >> a larg

Re: [PATCH] hw/dma: prevent overflow in soc_dma_set_request

2024-04-09 Thread Peter Maydell
On Tue, 9 Apr 2024 at 14:32, Anastasia Belova wrote: > > > > 09/04/24 15:02, Peter Maydell пишет: > > On Tue, 9 Apr 2024 at 12:54, Anastasia Belova wrote: > >> ch->num can reach values up to 31. Add casting to > >> a larger type before performing left shift to > >> prevent integer overflow. > > I

Re: [PATCH] hw/dma: prevent overflow in soc_dma_set_request

2024-04-09 Thread Anastasia Belova
09/04/24 15:02, Peter Maydell пишет: On Tue, 9 Apr 2024 at 12:54, Anastasia Belova wrote: ch->num can reach values up to 31. Add casting to a larger type before performing left shift to prevent integer overflow. If ch->num can only reach up to 31, then 1 << ch->num is fine, because QEMU can

Re: [PATCH] hw/dma: prevent overflow in soc_dma_set_request

2024-04-09 Thread Philippe Mathieu-Daudé
On 9/4/24 14:02, Peter Maydell wrote: On Tue, 9 Apr 2024 at 12:54, Anastasia Belova wrote: ch->num can reach values up to 31. Add casting to a larger type before performing left shift to prevent integer overflow. If ch->num can only reach up to 31, then 1 << ch->num is fine, because QEMU can

Re: [PATCH] hw/dma: prevent overflow in soc_dma_set_request

2024-04-09 Thread Peter Maydell
On Tue, 9 Apr 2024 at 12:54, Anastasia Belova wrote: > > ch->num can reach values up to 31. Add casting to > a larger type before performing left shift to > prevent integer overflow. If ch->num can only reach up to 31, then 1 << ch->num is fine, because QEMU can assume that integers are 32 bits,

[PATCH] hw/dma: prevent overflow in soc_dma_set_request

2024-04-09 Thread Anastasia Belova
ch->num can reach values up to 31. Add casting to a larger type before performing left shift to prevent integer overflow. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: afbb5194d4 ("Handle on-chip DMA controllers in one place, convert OMAP DMA to use it.") Signed-off-by