opnsense-src/sys/dev/isp
Alexander Motin ec3175fc3b isp: Improve task aborts handling
- When handling notify acknowledge from target code for task abort
request, not only send abort to the firmware, but also delete the
ATIO private data associated with the command.  It is required for
proper tag reuse, allowing new "conflicting" commands to be passed
to the target.  CTL was already fixed to handle that right, instead
of delaying them in restart queue of the driver.
 - When target finally aborts the command (which it should have
done before the notify ack) we should not send another abort to
the firmware.  Since we already sent the abort and deleted ATIO
private data above, just return successful completion here, doing
nothing.  Since the tag can be reused by that time, we can not
rely on its uniqueness, so when searching to the ATIO private data
compare also the aborted CCB pointer in addition to the tag.
 - Fix BA_RJT sending in isp_acknak_abts().  While it should be
rare, teach the code to send error responses for ABTS requests.

MFC after:	2 weeks
2024-12-09 11:52:26 -05:00
..
DriverManual.txt sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
Hardware.txt sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
isp.c isp: fix ISPCTL_ABORT_CMD switch case 2024-06-25 16:56:12 +02:00
isp_freebsd.c isp: Improve task aborts handling 2024-12-09 11:52:26 -05:00
isp_freebsd.h isp: Improve task aborts handling 2024-12-09 11:52:26 -05:00
isp_ioctl.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
isp_library.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
isp_library.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
isp_pci.c Add an isp(4) tunable to default to ispfw(4) firmware. 2024-06-24 16:47:55 -04:00
isp_stds.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
isp_target.c isp: Improve task aborts handling 2024-12-09 11:52:26 -05:00
isp_target.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
ispmbox.h Fix the isp(4) driver with 9.x firmware. 2024-06-24 16:47:55 -04:00
ispreg.h isp(4): Rework firmware handling/loading 2023-12-28 13:33:07 -05:00
ispvar.h Add an isp(4) tunable to default to ispfw(4) firmware. 2024-06-24 16:47:55 -04:00