From: Jason Gunthorpe <jgg@nvidia.com>
To: Tushar Dave <tdave@nvidia.com>
Cc: corbet@lwn.net, bhelgaas@google.com, paulmck@kernel.org,
akpm@linux-foundation.org, thuth@redhat.com, rostedt@goodmis.org,
xiongwei.song@windriver.com, vidyas@nvidia.com,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org, vsethi@nvidia.com,
sdonthineni@nvidia.com
Subject: Re: [PATCH 1/1] PCI: Fix Extend ACS configurability
Date: Mon, 6 Jan 2025 20:10:15 -0400 [thread overview]
Message-ID: <20250107001015.GM5556@nvidia.com> (raw)
In-Reply-To: <2676cf6e-d9eb-4a34-be5e-29824458f92f@nvidia.com>
On Mon, Jan 06, 2025 at 12:34:00PM -0800, Tushar Dave wrote:
> > > @@ -1028,10 +1031,10 @@ static void __pci_config_acs(struct pci_dev *dev, struct pci_acs *caps,
> > > pci_dbg(dev, "ACS mask = %#06x\n", mask);
> > > pci_dbg(dev, "ACS flags = %#06x\n", flags);
> > > + pci_dbg(dev, "ACS control = %#06x\n", caps->ctrl);
> > > - /* If mask is 0 then we copy the bit from the firmware setting. */
> > > - caps->ctrl = (caps->ctrl & ~mask) | (caps->fw_ctrl & mask);
> > > - caps->ctrl |= flags;
> > > + caps->ctrl &= ~mask;
> > > + caps->ctrl |= (flags & mask);
> >
> > And why delete fw_ctrl? Doesn't that break the unchanged
> > functionality?
>
> No, it does not break the unchanged functionality. I removed it because it
> is not needed after my fix.
I mean, the whole hunk above is not needed, right? Or at least I don't
see how it relates to your commit message..
> If it helps, using 'config_acs' the code only allows to configures the lower
> 7 bits of ACS ctrl for the specified PCI device(s).
> The bits other than the lower 7 bits of ACS ctrl remain unchanged.
> The bits specified with 'x' or 'X' that are within the 7 lower bits remain
> unchanged. Trying to configure bits other than lower 7 bits generates an
> error message "Invalid ACS flags specified"
But the fw_ctrl was how the x behavior was supposed to be implemented,
IIRC there were cases where you could not just rely on caps->ctrl as
something prior had alreaded changed it.
What about your fix to the mask changes this reasoning? If nothing
then it should be its own patch with its own explanation..
Jason
next prev parent reply other threads:[~2025-01-07 0:10 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-13 20:29 [PATCH 1/1] PCI: Fix Extend ACS configurability Tushar Dave
2024-12-14 12:30 ` Vidya Sagar
2025-01-02 18:40 ` Jason Gunthorpe
2025-01-06 20:34 ` Tushar Dave
2025-01-06 20:53 ` Bjorn Helgaas
2025-01-08 2:34 ` Tushar Dave
2025-01-07 0:10 ` Jason Gunthorpe [this message]
2025-01-08 2:32 ` Tushar Dave
2025-01-08 15:10 ` Jason Gunthorpe
2025-01-09 3:13 ` Tushar Dave
2025-01-13 20:07 ` Jason Gunthorpe
2025-01-16 3:11 ` Tushar Dave
2025-01-16 19:01 ` Jason Gunthorpe
2025-01-17 1:21 ` Tushar Dave
2025-01-17 13:28 ` Jason Gunthorpe
2025-01-17 18:41 ` Tushar Dave
2025-01-02 23:26 ` Bjorn Helgaas
2025-01-06 20:45 ` Tushar Dave
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=20250107001015.GM5556@nvidia.com \
--to=jgg@nvidia.com \
--cc=akpm@linux-foundation.org \
--cc=bhelgaas@google.com \
--cc=corbet@lwn.net \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=paulmck@kernel.org \
--cc=rostedt@goodmis.org \
--cc=sdonthineni@nvidia.com \
--cc=tdave@nvidia.com \
--cc=thuth@redhat.com \
--cc=vidyas@nvidia.com \
--cc=vsethi@nvidia.com \
--cc=xiongwei.song@windriver.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox