On Wed, Nov 18, 2020 at 11:03:51PM +0100, Michael Grzeschik wrote: > The variable mib_cnt is assigned with TOTAL_SWITCH_COUNTER_NUM. This > value can also be derived from the array size of mib_names. This patch > uses this calculated value instead, removes the extra define and uses > mib_cnt everywhere possible instead of the static define > TOTAL_SWITCH_COUNTER_NUM. > > Signed-off-by: Michael Grzeschik <m.grzesc...@pengutronix.de> > --- > drivers/net/dsa/microchip/ksz8795.c | 8 ++++---- > drivers/net/dsa/microchip/ksz8795_reg.h | 3 --- > 2 files changed, 4 insertions(+), 7 deletions(-) > > diff --git a/drivers/net/dsa/microchip/ksz8795.c > b/drivers/net/dsa/microchip/ksz8795.c > index 04a571bde7e6a4f..6ddba2de2d3026e 100644 > --- a/drivers/net/dsa/microchip/ksz8795.c > +++ b/drivers/net/dsa/microchip/ksz8795.c > @@ -23,7 +23,7 @@ > > static const struct { > char string[ETH_GSTRING_LEN]; > -} mib_names[TOTAL_SWITCH_COUNTER_NUM] = { > +} mib_names[] = { > { "rx_hi" }, > { "rx_undersize" }, > { "rx_fragments" }, > @@ -656,7 +656,7 @@ static void ksz8795_get_strings(struct dsa_switch *ds, > int port, > { > int i; > > - for (i = 0; i < TOTAL_SWITCH_COUNTER_NUM; i++) { > + for (i = 0; i < dev->mib_cnt; i++) { > memcpy(buf + i * ETH_GSTRING_LEN, mib_names[i].string, > ETH_GSTRING_LEN); > } > @@ -1236,7 +1236,7 @@ static int ksz8795_switch_init(struct ksz_device *dev) > dev->port_mask |= dev->host_mask; > > dev->reg_mib_cnt = KSZ8795_COUNTER_NUM; > - dev->mib_cnt = TOTAL_SWITCH_COUNTER_NUM; > + dev->mib_cnt = ARRAY_SIZE(mib_names);
Hi Michael I think it would be better to just use ARRAY_SIZE(mib_names) everywhere. It is one less hoop to jump through when looking for array overruns, etc. Andrew