Mark Patruck has reported problems with ixl revision 1.90 TSO diff.
He uses ixl device passthrough from Linux via KVM to OpenBSD guest.
After a few hours of operation, interface locks up with oactive.
The problem also occures with TSO disabled, after the TSO diff had
been commited. deraadt@ has seen similar problems with ixl interface
on sparc64.
Changing IXL_TX_PKT_DESCS back to the original value 8 fixes the
lockup and even TSO on the hardware still works. FreeBSD and NetBSD
also use this value. The 32 was copied from ix(4) TSO diff and is
not necessary for ixl(4).
debugged with jan@; lot of bisecting and testing by Mark Patruck
OK mglocker@ patrick@
-/* $OpenBSD: if_ixl.c,v 1.93 2023/11/10 15:51:20 bluhm Exp $ */
+/* $OpenBSD: if_ixl.c,v 1.94 2023/12/30 17:52:27 bluhm Exp $ */
/*
* Copyright (c) 2013-2015, Intel Corporation
uint64_t qword3;
} __packed __aligned(16);
-#define IXL_TX_PKT_DESCS 32
+#define IXL_TX_PKT_DESCS 8
#define IXL_TX_QUEUE_ALIGN 128
#define IXL_RX_QUEUE_ALIGN 128