[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241122233028.2762809-1-fenghua.yu@intel.com>
Date: Fri, 22 Nov 2024 15:30:23 -0800
From: Fenghua Yu <fenghua.yu@...el.com>
To: "Vinod Koul" <vkoul@...nel.org>,
"Dave Jiang" <dave.jiang@...el.com>
Cc: dmaengine@...r.kernel.org,
"linux-kernel" <linux-kernel@...r.kernel.org>,
Fenghua Yu <fenghua.yu@...el.com>
Subject: [PATCH v2 0/5] Enable FLR for IDXD halt
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
Powered by blists - more mailing lists