All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <simon.horman@corigine.com>
To: Denis Plotnikov <den-plotnikov@yandex-team.ru>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	shshaikh@marvell.com, manishc@marvell.com,
	GR-Linux-NIC-Dev@marvell.com, davem@davemloft.net,
	edumazet@google.com, kuba@kernel.org, pabeni@redhat.com,
	Bjorn Helgaas <bhelgaas@google.com>,
	linux-pci@vger.kernel.org
Subject: Re: [PATCH] qlcnic: check pci_reset_function result
Date: Wed, 5 Apr 2023 15:04:39 +0200	[thread overview]
Message-ID: <ZC1x57v1JdUyK7aG@corigine.com> (raw)
In-Reply-To: <b4852db1-61bd-410e-e89d-05d89cf14063@yandex-team.ru>

+ Bjorn Helgaas and linux-pci, as this is about FLR

On Mon, Apr 03, 2023 at 01:58:49PM +0300, Denis Plotnikov wrote:
> 
> On 31.03.2023 20:52, Simon Horman wrote:
> > On Fri, Mar 31, 2023 at 11:06:05AM +0300, Denis Plotnikov wrote:
> > > Static code analyzer complains to unchecked return value.
> > > It seems that pci_reset_function return something meaningful
> > > only if "reset_methods" is set.
> > > Even if reset_methods isn't used check the return value to avoid
> > > possible bugs leading to undefined behavior in the future.
> > > 
> > > Signed-off-by: Denis Plotnikov <den-plotnikov@yandex-team.ru>
> > nit: The tree this patch is targeted at should be designated, probably
> >       net-next, so the '[PATCH net-next]' in the subject.
> > 
> > > ---
> > >   drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c | 4 +++-
> > >   1 file changed, 3 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c
> > > index 87f76bac2e463..39ecfc1a1dbd0 100644
> > > --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c
> > > +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c
> > > @@ -628,7 +628,9 @@ int qlcnic_fw_create_ctx(struct qlcnic_adapter *dev)
> > >   	int i, err, ring;
> > >   	if (dev->flags & QLCNIC_NEED_FLR) {
> > > -		pci_reset_function(dev->pdev);
> > > +		err = pci_reset_function(dev->pdev);
> > > +		if (err && err != -ENOTTY)
> > Are you sure about the -ENOTTY part?
> > 
> > It seems odd to me that an FLR would be required but reset is not supported.
> No, I'm not sure. My logic is: if the reset method isn't set than
> pci_reset_function() returns -ENOTTY so treat that result as ok.
> pci_reset_function may return something different than -ENOTTY only if
> pci_reset_fn_methods[m].reset_fn is set.

I see your reasoning: -ENOTTY means nothing happened, and probably that is ok.
I think my main question is if that can ever happen.
If that is unknown, then I think this conservative approach makes sense.

Bjorn, do you happen to have any guidance here?

> > > +			return err;
> > >   		dev->flags &= ~QLCNIC_NEED_FLR;
> > >   	}
> > > -- 
> > > 2.25.1
> > > 

  reply	other threads:[~2023-04-05 13:05 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-31  8:06 [PATCH] qlcnic: check pci_reset_function result Denis Plotnikov
2023-03-31 17:52 ` Simon Horman
2023-04-03 10:58   ` Denis Plotnikov
2023-04-05 13:04     ` Simon Horman [this message]
2023-04-05 19:37       ` Bjorn Helgaas
2023-04-06  7:03         ` Simon Horman
2023-04-06  9:23           ` Denis Plotnikov
2023-04-06 11:43             ` Simon Horman
2023-04-06 12:42               ` Simon Horman
2023-04-06 15:06               ` Denis Plotnikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZC1x57v1JdUyK7aG@corigine.com \
    --to=simon.horman@corigine.com \
    --cc=GR-Linux-NIC-Dev@marvell.com \
    --cc=bhelgaas@google.com \
    --cc=davem@davemloft.net \
    --cc=den-plotnikov@yandex-team.ru \
    --cc=edumazet@google.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=manishc@marvell.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=shshaikh@marvell.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.