Message ID | 20210506194358.3925-1-peter.maydell@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/qtest/ahci-test.c: Calculate iso_size with 64-bit arithmetic | expand |
On 5/6/21 9:43 PM, Peter Maydell wrote: > Coverity notes that when calculating the 64-bit iso_size value in > ahci_test_cdrom() we actually only do it with 32-bit arithmetic. > This doesn't matter for the current test code because nsectors is > always small; but adding the cast avoids the coverity complaints. > > Fixes: Coverity CID 1432343 > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > tests/qtest/ahci-test.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
On 5/6/21 3:43 PM, Peter Maydell wrote: > Coverity notes that when calculating the 64-bit iso_size value in > ahci_test_cdrom() we actually only do it with 32-bit arithmetic. > This doesn't matter for the current test code because nsectors is > always small; but adding the cast avoids the coverity complaints. > > Fixes: Coverity CID 1432343 > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > tests/qtest/ahci-test.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tests/qtest/ahci-test.c b/tests/qtest/ahci-test.c > index 5e1954852e7..8073ccc2052 100644 > --- a/tests/qtest/ahci-test.c > +++ b/tests/qtest/ahci-test.c > @@ -1491,14 +1491,14 @@ static void ahci_test_cdrom(int nsectors, bool dma, uint8_t cmd, > char *iso; > int fd; > AHCIOpts opts = { > - .size = (ATAPI_SECTOR_SIZE * nsectors), > + .size = ((uint64_t)ATAPI_SECTOR_SIZE * nsectors), > .atapi = true, > .atapi_dma = dma, > .post_cb = ahci_cb_cmp_buff, > .set_bcl = override_bcl, > .bcl = bcl, > }; > - uint64_t iso_size = ATAPI_SECTOR_SIZE * (nsectors + 1); > + uint64_t iso_size = (uint64_t)ATAPI_SECTOR_SIZE * (nsectors + 1); > > /* Prepare ISO and fill 'tx' buffer */ > fd = prepare_iso(iso_size, &tx, &iso); > Whupps, thank you, Coverity. Reviewed-by: John Snow <jsnow@redhat.com>
diff --git a/tests/qtest/ahci-test.c b/tests/qtest/ahci-test.c index 5e1954852e7..8073ccc2052 100644 --- a/tests/qtest/ahci-test.c +++ b/tests/qtest/ahci-test.c @@ -1491,14 +1491,14 @@ static void ahci_test_cdrom(int nsectors, bool dma, uint8_t cmd, char *iso; int fd; AHCIOpts opts = { - .size = (ATAPI_SECTOR_SIZE * nsectors), + .size = ((uint64_t)ATAPI_SECTOR_SIZE * nsectors), .atapi = true, .atapi_dma = dma, .post_cb = ahci_cb_cmp_buff, .set_bcl = override_bcl, .bcl = bcl, }; - uint64_t iso_size = ATAPI_SECTOR_SIZE * (nsectors + 1); + uint64_t iso_size = (uint64_t)ATAPI_SECTOR_SIZE * (nsectors + 1); /* Prepare ISO and fill 'tx' buffer */ fd = prepare_iso(iso_size, &tx, &iso);
Coverity notes that when calculating the 64-bit iso_size value in ahci_test_cdrom() we actually only do it with 32-bit arithmetic. This doesn't matter for the current test code because nsectors is always small; but adding the cast avoids the coverity complaints. Fixes: Coverity CID 1432343 Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- tests/qtest/ahci-test.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)