linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

  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).