public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Fenghua Yu <fenghua.yu@intel.com>
To: "Vinod Koul" <vkoul@kernel.org>, "Dave Jiang" <dave.jiang@intel.com>
Cc: dmaengine@vger.kernel.org,
	"linux-kernel" <linux-kernel@vger.kernel.org>,
	Fenghua Yu <fenghua.yu@intel.com>
Subject: [PATCH v2 0/5] Enable FLR for IDXD halt
Date: Fri, 22 Nov 2024 15:30:23 -0800	[thread overview]
Message-ID: <20241122233028.2762809-1-fenghua.yu@intel.com> (raw)

When IDXD device hits hardware errors, it enters halt state and triggers
an interrupt to IDXD driver. Currently IDXD driver just prints an error
message in the interrupt handler.

A better way to handle the interrupt is to do Function Level Reset (FLR)
and recover the device's hardware and software configurations to its
previous working state. The device and software can continue to run after
the interrupt.

This series enables this FLR handling for IDXD device whose WQs are all
user type. FLR handling for IDXD device whose WQs are kernel type
will be implemented in a future series.

Change log:
v2:
- Patch 3: Call a free helper to free all saved configs (Dave Jiang).
- Patch 3: Replace defined bitmap free function with existing
  bitmpa_free().

v1:
https://lore.kernel.org/lkml/20240705181519.4067507-1-fenghua.yu@intel.com/

Fenghua Yu (5):
  dmaengine: idxd: Add idxd_pci_probe_alloc() helper
  dmaengine: idxd: Binding and unbinding IDXD device and driver
  dmaengine: idxd: Add idxd_device_config_save() and
    idxd_device_config_restore() helpers
  dmaengine: idxd: Refactor halt handler
  dmaengine: idxd: Enable Function Level Reset (FLR) for halt

 drivers/dma/idxd/idxd.h |  13 ++
 drivers/dma/idxd/init.c | 479 ++++++++++++++++++++++++++++++++++++----
 drivers/dma/idxd/irq.c  |  85 ++++---
 3 files changed, 507 insertions(+), 70 deletions(-)

-- 
2.37.1


             reply	other threads:[~2024-11-22 23:30 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-22 23:30 Fenghua Yu [this message]
2024-11-22 23:30 ` [PATCH v2 1/5] dmaengine: idxd: Add idxd_pci_probe_alloc() helper Fenghua Yu
2024-11-22 23:30 ` [PATCH v2 2/5] dmaengine: idxd: Binding and unbinding IDXD device and driver Fenghua Yu
2024-11-22 23:30 ` [PATCH v2 3/5] dmaengine: idxd: Add idxd_device_config_save() and idxd_device_config_restore() helpers Fenghua Yu
2024-11-22 23:30 ` [PATCH v2 4/5] dmaengine: idxd: Refactor halt handler Fenghua Yu
2024-11-22 23:30 ` [PATCH v2 5/5] dmaengine: idxd: Enable Function Level Reset (FLR) for halt Fenghua Yu
2024-12-02 22:15 ` [PATCH v2 0/5] Enable FLR for IDXD halt Dave Jiang
2024-12-24 10:42 ` Vinod Koul

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=20241122233028.2762809-1-fenghua.yu@intel.com \
    --to=fenghua.yu@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=dmaengine@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vkoul@kernel.org \
    /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