Hello Greg, This is habanalabs fixes pull request for 5.3-rc5. It is a bit larger than what I would like at this stage but it contains four very important fixes when running on s390 architecture. With these fixes the driver has been validated as fully functional on s390 (which is BE).
In addition, it contain two more fixes for minor bugs. Specific details of the fixes are in the attached tag. Thanks, Oded The following changes since commit d45331b00ddb179e291766617259261c112db872: Linux 5.3-rc4 (2019-08-11 13:26:41 -0700) are available in the Git repository at: git://people.freedesktop.org/~gabbayo/linux tags/misc-habanalabs-fixes-2019-08-12 for you to fetch changes up to b421d83a3947369fd5718824aecfaebe1efbf7ed: habanalabs: fix device IRQ unmasking for BE host (2019-08-12 09:01:10 +0300) ---------------------------------------------------------------- This tag contains a couple of important fixes: - Four fixes when running on s390 architecture (BE). With these fixes, the driver is fully functional on Big-endian architectures. The fixes include: - Validation/Patching of user packets - Completion queue handling - Internal H/W queues submission - Device IRQ unmasking operation - Fix to double free in an error path to avoid kernel corruption - Fix to DRAM usage accounting when a user process is terminated forcefully. ---------------------------------------------------------------- Ben Segal (3): habanalabs: fix endianness handling for packets from user habanalabs: fix completion queue handling when host is BE habanalabs: fix device IRQ unmasking for BE host Oded Gabbay (1): habanalabs: fix endianness handling for internal QMAN submission Tomer Tayar (2): habanalabs: Avoid double free in error flow habanalabs: fix DRAM usage accounting on context tear down drivers/misc/habanalabs/device.c | 5 +- drivers/misc/habanalabs/goya/goya.c | 72 ++++++++++++++-------- drivers/misc/habanalabs/goya/goyaP.h | 2 +- drivers/misc/habanalabs/habanalabs.h | 9 ++- drivers/misc/habanalabs/hw_queue.c | 14 ++--- .../misc/habanalabs/include/goya/goya_packets.h | 13 ++++ drivers/misc/habanalabs/irq.c | 27 ++++---- drivers/misc/habanalabs/memory.c | 2 + 8 files changed, 90 insertions(+), 54 deletions(-)