Subject: Re: [PATCH net-next v17 02/13] rtase: Implement the .ndo_open function

From: Simon Horman <[email-masked]>
Date: Fri, 3 May 2024 12:03:15 +0100

On Fri, May 03, 2024 at 10:19:05AM +0000, Justin Lai wrote:
> > On Thu, May 02, 2024 at 05:18:36PM +0800, Justin Lai wrote:
> > > Implement the .ndo_open function to set default hardware settings and
> > > initialize the descriptor ring and interrupts. Among them, when
> > > requesting irq, because the first group of interrupts needs to process
> > > more events, the overall structure will be different from other groups
> > > of interrupts, so it needs to be processed separately.
> > >
> > > Signed-off-by: Justin Lai <[email-masked]>
> > 
> > Hi Justin,
> > 
> > some minor feedback from my side.
> > 
> > > +static int rtase_open(struct net_device *dev) {
> > > +     struct rtase_private *tp = netdev_priv(dev);
> > > +     struct rtase_int_vector *ivec = &tp->int_vector[0];
> > > +     const struct pci_dev *pdev = tp->pdev;
> > > +     u16 i, j;
> > > +     int ret;
> > 
> > nit: please use reverse xmas tree order - longest line to shortest -
> >      for local variable declarations in new Networking code.
> > 
> Hi Simon,
> This is partly because ivec needs to use tp for initialization,
> so tp is placed in front of ivec, causing this situation.

Thanks Justin,

Understood.

Had I noticed that I probably wouldn't have commented as I did above.
But, FWIIW, in such cases my suggestion would be to separate the
declaration from the assignment.

Something like this:

	struct rtase_private *tp = netdev_priv(dev);
	const struct pci_dev *pdev = tp->pdev;
	struct rtase_int_vector *ivec;
	u16 i, j;
	int ret;

	ivec = &tp->int_vector[0];