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>,
Amey Narkhede <ameynarkhede03@gmail.com>
Subject: [PATCH v5 0/7] Expose and manage PCI device reset
Date: Sun, 30 May 2021 00:55:20 +0530 [thread overview]
Message-ID: <20210529192527.2708-1-ameynarkhede03@gmail.com> (raw)
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.
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 (5):
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/sysfs: Allow userspace to query and set device reset mechanism
PCI: Change the type of probe argument in reset functions
Shanker Donthineni (2):
PCI: Add support for a function level reset based on _RST method
PCI: Enable NO_BUS_RESET quirk for Nvidia GPUs
Documentation/ABI/testing/sysfs-bus-pci | 16 ++
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 | 4 +-
drivers/pci/pci-sysfs.c | 128 ++++++++-
drivers/pci/pci.c | 269 +++++++++++-------
drivers/pci/pci.h | 14 +-
drivers/pci/pcie/aer.c | 12 +-
drivers/pci/probe.c | 4 +-
drivers/pci/quirks.c | 54 ++--
drivers/pci/remove.c | 1 -
include/linux/pci.h | 16 +-
include/linux/pci_hotplug.h | 2 +-
14 files changed, 385 insertions(+), 143 deletions(-)
--
2.31.1
next reply other threads:[~2021-05-29 19:25 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-29 19:25 Amey Narkhede [this message]
2021-05-29 19:25 ` [PATCH v5 1/7] PCI: Add pcie_reset_flr to follow calling convention of other reset methods Amey Narkhede
2021-05-29 19:25 ` [PATCH v5 2/7] PCI: Add new array for keeping track of ordering of " Amey Narkhede
2021-06-02 21:37 ` Shanker R Donthineni
2021-06-05 20:55 ` Bjorn Helgaas
2021-05-29 19:25 ` [PATCH v5 3/7] PCI: Remove reset_fn field from pci_dev Amey Narkhede
2021-06-02 22:16 ` Shanker R Donthineni
2021-06-05 20:57 ` Bjorn Helgaas
2021-05-29 19:25 ` [PATCH v5 4/7] PCI/sysfs: Allow userspace to query and set device reset mechanism Amey Narkhede
2021-06-02 22:17 ` Shanker R Donthineni
2021-06-06 12:58 ` Krzysztof Wilczyński
2021-06-06 14:27 ` Shanker R Donthineni
2021-05-29 19:25 ` [PATCH v5 5/7] PCI: Add support for a function level reset based on _RST method Amey Narkhede
2021-06-05 20:53 ` Bjorn Helgaas
2021-06-06 0:04 ` Shanker R Donthineni
2021-06-06 5:00 ` Shanker R Donthineni
2021-06-09 12:51 ` Shanker R Donthineni
2021-05-29 19:25 ` [PATCH v5 6/7] PCI: Enable NO_BUS_RESET quirk for Nvidia GPUs Amey Narkhede
2021-05-29 19:25 ` [PATCH v5 7/7] PCI: Change the type of probe argument in reset functions Amey Narkhede
2021-06-02 22:15 ` Shanker R Donthineni
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=20210529192527.2708-1-ameynarkhede03@gmail.com \
--to=ameynarkhede03@gmail.com \
--cc=alex.williamson@redhat.com \
--cc=bhelgaas@google.com \
--cc=kw@linux.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=okaya@kernel.org \
--cc=raphael.norwitz@nutanix.com \
--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).