[net-next PATCH] octeontx2-af: fix array bound error

From: Hariprasad Kelam
Date: Thu Feb 10 2022 - 11:36:11 EST


This patch fixes below error by using proper data type.

drivers/net/ethernet/marvell/octeontx2/af/rpm.c: In function
'rpm_cfg_pfc_quanta_thresh':
include/linux/find.h:40:23: error: array subscript 'long unsigned
int[0]' is partly outside array bounds of 'u16[1]' {aka 'short unsigned
int[1]'} [-Werror=array-bounds]
40 | val = *addr & GENMASK(size - 1, offset);

Signed-off-by: Hariprasad Kelam <hkelam@xxxxxxxxxxx>
---
drivers/net/ethernet/marvell/octeontx2/af/rpm.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rpm.c b/drivers/net/ethernet/marvell/octeontx2/af/rpm.c
index d7a8aad46e12..47e83d7a5804 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rpm.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rpm.c
@@ -141,14 +141,15 @@ int rpm_lmac_get_pause_frm_status(void *rpmd, int lmac_id,
return 0;
}

-static void rpm_cfg_pfc_quanta_thresh(rpm_t *rpm, int lmac_id, u16 pfc_en,
+static void rpm_cfg_pfc_quanta_thresh(rpm_t *rpm, int lmac_id,
+ unsigned long pfc_en,
bool enable)
{
u64 quanta_offset = 0, quanta_thresh = 0, cfg;
int i, shift;

/* Set pause time and interval */
- for_each_set_bit(i, (unsigned long *)&pfc_en, 16) {
+ for_each_set_bit(i, &pfc_en, 16) {
switch (i) {
case 0:
case 1:
--
2.17.1