From: Amey Narkhede <ameynarkhede03@gmail.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: alex.williamson@redhat.com,
Raphael Norwitz <raphael.norwitz@nutanix.com>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
kw@linux.com, Shanker Donthineni <sdonthineni@nvidia.com>,
Sinan Kaya <okaya@kernel.org>, Len Brown <lenb@kernel.org>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Amey Narkhede <ameynarkhede03@gmail.com>
Subject: Re: [PATCH v16 0/9] PCI: Expose and manage PCI device reset
Date: Tue, 17 Aug 2021 23:42:55 +0530 [thread overview]
Message-ID: <20210817181255.5g3kdkvfwf2jnv2k@archlinux> (raw)
In-Reply-To: <20210817180500.1253-1-ameynarkhede03@gmail.com>
On 21/08/17 11:34PM, Amey Narkhede wrote:
> PCI and PCIe devices may support a number of possible reset mechanisms
> for example Function Level Reset (FLR) provided via Advanced Feature or
> PCIe capabilities, Power Management reset, bus reset, or device specific reset.
> Currently the PCI subsystem creates a policy prioritizing these reset methods
> which provides neither visibility nor control to userspace.
>
> Expose the reset methods available per device to userspace, via sysfs
> and allow an administrative user or device owner to have ability to
> manage per device reset method priorities or exclusions.
> This feature aims to allow greater control of a device for use cases
> as device assignment, where specific device or platform issues may
> interact poorly with a given reset method, and for which device specific
> quirks have not been developed.
>
Apologies. I messed my git branch dance. I sent old 9/9 patch again.
You can find updated patches here https://lore.kernel.org/linux-pci/20210817180937.3123-1-ameynarkhede03@gmail.com/
Again apologies for the spam.
> Changes in v16:
> - Refactor acpi_pci_bridge_d3() in patch 7/9
> - Fixed consistency issues in patch 9/9
>
> Changes in v15:
> - Fix use of uninitialized variable in patch 3/9
>
> Changes in v14:
> - Remove duplicate entries from pdev->reset_methods as per
> Shanker's suggestion
>
> Changes in v13:
> - Added "PCI: Cache PCIe FLR capability"
> - Removed memcpy in pci_init_reset_methods() and reset_method_show
> - Moved reset_method sysfs attribute code from pci-sysfs.c to
> pci.c
>
> Changes in v12:
> - Corrected subject in 0/8 (cover letter).
>
> Changes in v11:
> - Alex's suggestion fallback back to other resets if the ACPI RST
> fails. Fix "s/-EINVAL/-ENOTTY/" in 7/8 patch.
>
> Changes in v10:
> - Fix build error on ppc as reported by build bot
>
> Changes in v9:
> - Renamed has_flr bitfield to has_pcie_flr and restored
> use of PCI_DEV_FLAGS_NO_FLR_RESET in quirk_no_flr()
> - Cleaned up sysfs code
>
> Changes in v8:
> - Added has_flr bitfield to struct pci_dev to cache flr
> capability
> - Updated encoding scheme used in reset_methods array as per
> Bjorn's suggestion
> - Updated Shanker's ACPI patches
>
> Changes in v7:
> - Fix the pci_dev_acpi_reset() prototype mismatch
> in case of CONFIG_ACPI=n
>
> Changes in v6:
> - Address Bjorn's and Krzysztof's review comments
> - Add Shanker's updated patches along with new
> "PCI: Setup ACPI_COMPANION early" patch
>
> Changes in v5:
> - Rebase the series over pci/reset branch of
> Bjorn's pci tree to avoid merge conflicts
> caused by recent changes in existing reset
> sysfs attribute
>
> Changes in v4:
> - Change the order or strlen and strim in reset_method_store
> function to avoid extra strlen call.
> - Use consistent terminology in new
> pci_reset_mode enum and rename the probe argument
> of reset functions.
>
> Changes in v3:
> - Dropped "PCI: merge slot and bus reset implementations" which was
> already accepted separately
> - Grammar fixes
> - Added Shanker's patches which were rebased on v2 of this series
> - Added "PCI: Change the type of probe argument in reset functions"
> and additional user input sanitization code in reset_method_store
> function per review feedback from Krzysztof
>
> Changes in v2:
> - Use byte array instead of bitmap to keep track of
> ordering of reset methods
> - Fix incorrect use of reset_fn field in octeon driver
> - Allow writing comma separated list of names of supported reset
> methods to reset_method sysfs attribute
> - Writing empty string instead of "none" to reset_method attribute
> disables ability of reset the device
>
> Amey Narkhede (6):
> PCI: Cache PCIe FLR capability
> PCI: Add pcie_reset_flr to follow calling convention of other reset
> methods
> PCI: Add new array for keeping track of ordering of reset methods
> PCI: Remove reset_fn field from pci_dev
> PCI: Allow userspace to query and set device reset mechanism
> PCI: Change the type of probe argument in reset functions
>
> Shanker Donthineni (3):
> PCI: Define a function to set ACPI_COMPANION in pci_dev
> PCI: Setup ACPI fwnode early and at the same time with OF
> PCI: Add support for ACPI _RST reset method
>
> Documentation/ABI/testing/sysfs-bus-pci | 19 ++
> drivers/crypto/cavium/nitrox/nitrox_main.c | 4 +-
> .../ethernet/cavium/liquidio/lio_vf_main.c | 2 +-
> drivers/pci/hotplug/pciehp.h | 2 +-
> drivers/pci/hotplug/pciehp_hpc.c | 2 +-
> drivers/pci/hotplug/pnv_php.c | 4 +-
> drivers/pci/pci-acpi.c | 83 +++--
> drivers/pci/pci-sysfs.c | 3 +-
> drivers/pci/pci.c | 287 +++++++++++++-----
> drivers/pci/pci.h | 24 +-
> drivers/pci/pcie/aer.c | 12 +-
> drivers/pci/probe.c | 16 +-
> drivers/pci/quirks.c | 25 +-
> drivers/pci/remove.c | 1 -
> include/linux/pci.h | 14 +-
> include/linux/pci_hotplug.h | 2 +-
> 16 files changed, 351 insertions(+), 149 deletions(-)
>
> --
> 2.32.0
next prev parent reply other threads:[~2021-08-17 18:13 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-17 18:04 [PATCH v16 0/9] PCI: Expose and manage PCI device reset Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 1/9] PCI: Cache PCIe FLR capability Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 2/9] PCI: Add pcie_reset_flr to follow calling convention of other reset methods Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 3/9] PCI: Add new array for keeping track of ordering of " Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 4/9] PCI: Remove reset_fn field from pci_dev Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 5/9] PCI: Allow userspace to query and set device reset mechanism Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 6/9] PCI: Define a function to set ACPI_COMPANION in pci_dev Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 7/9] PCI: Setup ACPI fwnode early and at the same time with OF Amey Narkhede
2021-08-17 18:04 ` [PATCH v16 8/9] PCI: Add support for ACPI _RST reset method Amey Narkhede
2021-08-17 18:05 ` [PATCH v16 9/9] PCI: Change the type of probe argument in reset functions Amey Narkhede
2021-08-17 18:12 ` Amey Narkhede [this message]
2021-08-17 18:09 [PATCH v16 0/9] PCI: Expose and manage PCI device reset Amey Narkhede
2021-08-18 22:46 ` Bjorn Helgaas
2021-08-19 6:01 ` Amey Narkhede
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=20210817181255.5g3kdkvfwf2jnv2k@archlinux \
--to=ameynarkhede03@gmail.com \
--cc=alex.williamson@redhat.com \
--cc=bhelgaas@google.com \
--cc=kw@linux.com \
--cc=lenb@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=okaya@kernel.org \
--cc=raphael.norwitz@nutanix.com \
--cc=rjw@rjwysocki.net \
--cc=sdonthineni@nvidia.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;
as well as URLs for NNTP newsgroup(s).