Hi,
On 4/22/2025 2:17 PM, Greg KH wrote:
On Tue, Apr 08, 2025 at 11:57:11AM +0200, Jacek Lawrynowicz wrote:
From: Karol Wachowski karol.wachowski@intel.com
commit dad945c27a42dfadddff1049cf5ae417209a8996 upstream.
Trigger recovery of the NPU upon receiving HW context violation from the firmware. The context violation error is a fatal error that prevents any subsequent jobs from being executed. Without this fix it is necessary to reload the driver to restore the NPU operational state.
This is simplified version of upstream commit as the full implementation would require all engine reset/resume logic to be backported.
We REALLY do not like taking patches that are not upstream. Why not backport all of the needed patches instead, how many would that be? Taking one-off patches like this just makes it harder/impossible to maintain the code over time as further fixes in this same area will NOT apply properly at all.
Think about what you want to be touching 5 years from now, a one-off change that doesn't match the rest of the kernel tree, or something that is the same?
Sure, I'm totally on board with backporting all required patches. I thought it was not possible due to 100 line limit.
This would be the minimum set of patches:
Patch 1: drivers/accel/ivpu/ivpu_drv.c | 32 +++----------- drivers/accel/ivpu/ivpu_drv.h | 2 + drivers/accel/ivpu/ivpu_job.c | 78 ++++++++++++++++++++++++++------- drivers/accel/ivpu/ivpu_job.h | 1 + drivers/accel/ivpu/ivpu_mmu.c | 3 +- drivers/accel/ivpu/ivpu_sysfs.c | 5 ++- 6 files changed, 75 insertions(+), 46 deletions(-)
Patch 2: drivers/accel/ivpu/ivpu_job.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-)
Patch 3: drivers/accel/ivpu/ivpu_job.c | 2 +- drivers/accel/ivpu/ivpu_jsm_msg.c | 3 +- drivers/accel/ivpu/vpu_boot_api.h | 45 +++-- drivers/accel/ivpu/vpu_jsm_api.h | 303 +++++++++++++++++++++++++----- 4 files changed, 293 insertions(+), 60 deletions(-)
Patch 4: drivers/accel/ivpu/ivpu_job.c | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)
First patch needs some changes to apply correctly to 6.12 but the rest of them apply pretty cleanly. Is this acceptable?
Regards, Jacek