HomeFreeBSD

iflib: Add null check to iflib_stop()

Description

iflib: Add null check to iflib_stop()

Ever since gtaskqueue_drain() was added to iflib_stop(), a kernel panic
occurs when the ice(4) driver is in recovery mode. Queues are not
initialized in this mode, so gt_taskqueue is not initialized, and
gtaskqueue_drain() will panic.

Fix this by only doing a drain if an RX queue's gt_taskqueue is
initialized.

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Reviewed by: erj@
MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D37892

(cherry picked from commit 9147969bc277b389a62373c6a5050a2ebfd39071)

Details

Provenance
przemyslawx.lewandowski_intel.comAuthored on Jan 24 2023, 11:41 PM
erjCommitted on Feb 7 2023, 12:24 AM
Differential Revision
D37892: Add null check to iflib_stop()
Parents
rGb4e0be6df772: vtd: Increase DRHD_MAX_UNITS
Branches
Unknown
Tags
Unknown