svn commit: r344163 - stable/12/sys/dev/ixl

Eric Joyner erj at FreeBSD.org
Fri Feb 15 19:13:12 UTC 2019


Author: erj
Date: Fri Feb 15 19:13:11 2019
New Revision: 344163
URL: https://svnweb.freebsd.org/changeset/base/344163

Log:
  MFC r344132:
  
  ixl: Fix panic caused by bug exposed by r344062
  
  Don't use a struct if_irq for IFLIB_INTR_IOV type interrupts since that results
  in get_core_offset() being called on them, and get_core_offset() doesn't
  handle IFLIB_INTR_IOV type interrupts, which results in an assert() being triggered
  in iflib_irq_set_affinity().
  
  PR:		235730
  Reported by:	Jeffrey Pieper <jeffrey.e.pieper at intel.com>
  Sponsored by:	Intel Corporation

Modified:
  stable/12/sys/dev/ixl/if_ixl.c
  stable/12/sys/dev/ixl/ixl_pf.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/ixl/if_ixl.c
==============================================================================
--- stable/12/sys/dev/ixl/if_ixl.c	Fri Feb 15 18:51:43 2019	(r344162)
+++ stable/12/sys/dev/ixl/if_ixl.c	Fri Feb 15 19:13:11 2019	(r344163)
@@ -932,7 +932,7 @@ ixl_if_msix_intr_assign(if_ctx_t ctx, int msix)
 		return (err);
 	}
 	/* Create soft IRQ for handling VFLRs */
-	iflib_softirq_alloc_generic(ctx, &pf->iov_irq, IFLIB_INTR_IOV, pf, 0, "iov");
+	iflib_softirq_alloc_generic(ctx, NULL, IFLIB_INTR_IOV, pf, 0, "iov");
 
 	/* Now set up the stations */
 	for (i = 0, vector = 1; i < vsi->shared->isc_nrxqsets; i++, vector++, rx_que++) {

Modified: stable/12/sys/dev/ixl/ixl_pf.h
==============================================================================
--- stable/12/sys/dev/ixl/ixl_pf.h	Fri Feb 15 18:51:43 2019	(r344162)
+++ stable/12/sys/dev/ixl/ixl_pf.h	Fri Feb 15 19:13:11 2019	(r344163)
@@ -138,7 +138,6 @@ struct ixl_pf {
 	struct ixl_vf		*vfs;
 	int			num_vfs;
 	uint16_t		veb_seid;
-	struct if_irq		iov_irq;
 };
 
 /*


More information about the svn-src-stable mailing list