Re: [PATCH net-next v3 8/9] net: dsa: microchip: init predictable IPV to queue mapping for all non KSZ8xxx variants

From: Oleksij Rempel
Date: Mon Apr 08 2024 - 01:01:04 EST


Hi Arun,

On Mon, Apr 08, 2024 at 03:41:46AM +0000, Arun.Ramadoss@xxxxxxxxxxxxx wrote:
> Hi Oleksij,
>
> > +static int ksz9477_set_default_prio_queue_mapping(struct ksz_device
> > *dev,
> > + int port)
> > +{
> > + u32 queue_map = 0;
> > + int ipv;
>
> Just a suggestion for readability: if you can use common variable for
> counter variable like cnt or n similar to return variable ret, it will
> be easier to follow instead of ipv here, queue in other function.

Sorry, I disagree here. Variable name should describe the purpose of it,
especially if things got complicated. If other function uses "queue" as
variable name but actually ipv is the meaning of it, then it should be
renamed.

> > +
> > + for (ipv = 0; ipv < dev->info->num_ipvs; ipv++) {
> > + int queue;
> > +
> > + /* Traffic Type (TT) is corresponding to the Internal
> > Priority
> > + * Value (IPV) in the switch. Traffic Class (TC) is
> > + * corresponding to the queue in the switch.
> > + */
> > + queue = ieee8021q_tt_to_tc(ipv, dev->info-
> > >num_tx_queues);
> > + if (queue < 0)
> > + return queue;
>
> what happens if the num_tx_queues value passed is other than 1 to 8.
> For ex: if it is 9, then ieee8021q_tt_to_tc( ) generates pr_warn as
> invalid number of queue and return queue as 0. if will not execute, so
> queue_map will be updated. Do we need check for valid range of values
> instead of just queue < 0.
>
> Not sure this scenario can occur.

Good point, I should fix ieee8021q_tt_to_tc(), it should return -EINVAL
instead.

--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |