Message ID | 20250108072504.1696532-2-18255117159@163.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Krzysztof WilczyĆski |
Headers | show |
Series | misc: pci_endpoint_test: Fix overflow of bar_size. | expand |
On Wed, Jan 08, 2025 at 03:25:03PM +0800, Hans Zhang wrote: > A BAR size is always a power of two. buf_size = min(SZ_1M, bar_size); > If the BAR size is <= 1MB, there will be 1 iteration, no remainder. If > the BAR size is > 1MB, there will be more than one iteration, but the > size will always be evenly divisible by 1MB, so no remainder. > > Signed-off-by: Hans Zhang <18255117159@163.com> > Suggested-by: Niklas Cassel <cassel@kernel.org> > --- > drivers/misc/pci_endpoint_test.c | 6 ------ > 1 file changed, 6 deletions(-) > > diff --git a/drivers/misc/pci_endpoint_test.c b/drivers/misc/pci_endpoint_test.c > index 3aaaf47fa4ee..0e68dfa7257a 100644 > --- a/drivers/misc/pci_endpoint_test.c > +++ b/drivers/misc/pci_endpoint_test.c > @@ -313,12 +313,6 @@ static bool pci_endpoint_test_bar(struct pci_endpoint_test *test, > write_buf, read_buf, buf_size)) > return false; > > - remain = bar_size % buf_size; > - if (remain) > - if (pci_endpoint_test_bar_memcmp(test, barno, buf_size * iters, > - write_buf, read_buf, remain)) > - return false; > - > return true; > } > > -- > 2.25.1 > You also need to remove the remain variable declaration in this patch, otherwise there will be a build warning when building this patch. With that fixed: Reviewed-by: Niklas Cassel <cassel@kernel.org>
On 2025/1/8 15:40, Niklas Cassel wrote: > You also need to remove the remain variable declaration in this patch, > otherwise there will be a build warning when building this patch. Ok, I have resubmitted patch. Best regards Hans
diff --git a/drivers/misc/pci_endpoint_test.c b/drivers/misc/pci_endpoint_test.c index 3aaaf47fa4ee..0e68dfa7257a 100644 --- a/drivers/misc/pci_endpoint_test.c +++ b/drivers/misc/pci_endpoint_test.c @@ -313,12 +313,6 @@ static bool pci_endpoint_test_bar(struct pci_endpoint_test *test, write_buf, read_buf, buf_size)) return false; - remain = bar_size % buf_size; - if (remain) - if (pci_endpoint_test_bar_memcmp(test, barno, buf_size * iters, - write_buf, read_buf, remain)) - return false; - return true; }
A BAR size is always a power of two. buf_size = min(SZ_1M, bar_size); If the BAR size is <= 1MB, there will be 1 iteration, no remainder. If the BAR size is > 1MB, there will be more than one iteration, but the size will always be evenly divisible by 1MB, so no remainder. Signed-off-by: Hans Zhang <18255117159@163.com> Suggested-by: Niklas Cassel <cassel@kernel.org> --- drivers/misc/pci_endpoint_test.c | 6 ------ 1 file changed, 6 deletions(-)