diff mbox series

[v3] rtw88: Remove unnecessary check code

Message ID 20210718084202.5118-1-len.baker@gmx.com
State New
Headers show
Series [v3] rtw88: Remove unnecessary check code | expand

Commit Message

Len Baker July 18, 2021, 8:42 a.m. UTC
The rtw_pci_init_rx_ring function is only ever called with a fixed
constant or RTK_MAX_RX_DESC_NUM for the "len" argument. Since this
constant is defined as 512, the "if (len > TRX_BD_IDX_MASK)" check
can never happen (TRX_BD_IDX_MASK is defined as GENMASK(11, 0) or in
other words as 4095).

So, remove this check.

Signed-off-by: Len Baker <len.baker@gmx.com>
---
Changelog v1 -> v2
- Remove the macro ARRAY_SIZE from the for loop (Pkshih, Brian Norris).
- Add a new check for the len variable (Pkshih, Brian Norris).

Changelog v2 -> v3
- Change the subject of the patch.
- Remove the "if" check statement (Greg KH)
- Remove the "Fixes" tag, "Addresses-Coverity-ID" tag and Cc to stable.

The previous versions can be found at:

v1
https://lore.kernel.org/lkml/20210711141634.6133-1-len.baker@gmx.com/

v2
https://lore.kernel.org/lkml/20210716155311.5570-1-len.baker@gmx.com/

 drivers/net/wireless/realtek/rtw88/pci.c | 5 -----
 1 file changed, 5 deletions(-)

--
2.25.1

Comments

Kalle Valo July 27, 2021, 6:34 a.m. UTC | #1
Len Baker <len.baker@gmx.com> writes:

> The rtw_pci_init_rx_ring function is only ever called with a fixed
> constant or RTK_MAX_RX_DESC_NUM for the "len" argument. Since this
> constant is defined as 512, the "if (len > TRX_BD_IDX_MASK)" check
> can never happen (TRX_BD_IDX_MASK is defined as GENMASK(11, 0) or in
> other words as 4095).
>
> So, remove this check.
>
> Signed-off-by: Len Baker <len.baker@gmx.com>

Are everyone ok with this version?
Brian Norris July 27, 2021, 6:16 p.m. UTC | #2
On Mon, Jul 26, 2021 at 11:34 PM Kalle Valo <kvalo@codeaurora.org> wrote:
>

> Len Baker <len.baker@gmx.com> writes:

>

> > The rtw_pci_init_rx_ring function is only ever called with a fixed

> > constant or RTK_MAX_RX_DESC_NUM for the "len" argument. Since this

> > constant is defined as 512, the "if (len > TRX_BD_IDX_MASK)" check

> > can never happen (TRX_BD_IDX_MASK is defined as GENMASK(11, 0) or in

> > other words as 4095).

> >

> > So, remove this check.

> >

> > Signed-off-by: Len Baker <len.baker@gmx.com>

>

> Are everyone ok with this version?


I suppose? I'm not really sure where the line should be drawn on
excessive bounds checking, false warnings from otherwise quite useful
static analysis tools, etc., but I suppose it doesn't make much sense
to add additional excess bounds checks just to quiet Coverity.

It might be nice to include the true motivation in the patch
description though, which is: "this also quiets a false warning from
Coverity".

Anyway, feel free to pick one of these:

Shrug-by: Brian Norris <briannorris@chromium.org>

or

Reviewed-by: Brian Norris <briannorris@chromium.org>
Len Baker July 28, 2021, 5:50 p.m. UTC | #3
On Tue, Jul 27, 2021 at 11:16:11AM -0700, Brian Norris wrote:
> On Mon, Jul 26, 2021 at 11:34 PM Kalle Valo <kvalo@codeaurora.org> wrote:

> >

> > Len Baker <len.baker@gmx.com> writes:

> >

> > > The rtw_pci_init_rx_ring function is only ever called with a fixed

> > > constant or RTK_MAX_RX_DESC_NUM for the "len" argument. Since this

> > > constant is defined as 512, the "if (len > TRX_BD_IDX_MASK)" check

> > > can never happen (TRX_BD_IDX_MASK is defined as GENMASK(11, 0) or in

> > > other words as 4095).

> > >

> > > So, remove this check.

> > >

> > > Signed-off-by: Len Baker <len.baker@gmx.com>

> >

> > Are everyone ok with this version?

>

> I suppose? I'm not really sure where the line should be drawn on

> excessive bounds checking, false warnings from otherwise quite useful

> static analysis tools, etc., but I suppose it doesn't make much sense

> to add additional excess bounds checks just to quiet Coverity.

>

> It might be nice to include the true motivation in the patch

> description though, which is: "this also quiets a false warning from

> Coverity".


Ok, I will send a new version with the commit changelog updated.

>

> Anyway, feel free to pick one of these:

>

> Shrug-by: Brian Norris <briannorris@chromium.org>

>

> or

>

> Reviewed-by: Brian Norris <briannorris@chromium.org>


Thanks,
Len
diff mbox series

Patch

diff --git a/drivers/net/wireless/realtek/rtw88/pci.c b/drivers/net/wireless/realtek/rtw88/pci.c
index e7d17ab8f113..f17e7146f20f 100644
--- a/drivers/net/wireless/realtek/rtw88/pci.c
+++ b/drivers/net/wireless/realtek/rtw88/pci.c
@@ -268,11 +268,6 @@  static int rtw_pci_init_rx_ring(struct rtw_dev *rtwdev,
 	int i, allocated;
 	int ret = 0;

-	if (len > TRX_BD_IDX_MASK) {
-		rtw_err(rtwdev, "len %d exceeds maximum RX entries\n", len);
-		return -EINVAL;
-	}
-
 	head = dma_alloc_coherent(&pdev->dev, ring_sz, &dma, GFP_KERNEL);
 	if (!head) {
 		rtw_err(rtwdev, "failed to allocate rx ring\n");