Description of problem: 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. 98d187a98903 dmaengine: idxd: Enable Function Level Reset (FLR) for halt 3e114fa0fd15 dmaengine: idxd: Refactor halt handler 6078a315aec1 dmaengine: idxd: Add idxd_device_config_save() and idxd_device_config_restore() helpers 3ab45516772b dmaengine: idxd: Binding and unbinding IDXD device and driver 087e89b69b5f dmaengine: idxd: Add idxd_pci_probe_alloc() helper Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
The PR Link: https://gitee.com/anolis/cloud-kernel/pulls/5686
The PR Link: https://gitee.com/anolis/cloud-kernel/pulls/5708