From: Mike Marciniszyn Date: Fri, 24 May 2019 15:44:45 +0000 (-0400) Subject: IB/hfi1: Insure freeze_work work_struct is canceled on shutdown X-Git-Tag: v5.2-rc4~22^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6d517353c70bb0818b691ca003afdcb5ee5ea44e;p=thirdparty%2Fkernel%2Flinux.git IB/hfi1: Insure freeze_work work_struct is canceled on shutdown By code inspection, the freeze_work is never canceled. Fix by adding a cancel_work_sync in the shutdown path to insure it is no longer running. Fixes: 7724105686e7 ("IB/hfi1: add driver files") Reviewed-by: Michael J. Ruhl Reviewed-by: Dennis Dalessandro Signed-off-by: Mike Marciniszyn Signed-off-by: Dennis Dalessandro Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/hw/hfi1/chip.c b/drivers/infiniband/hw/hfi1/chip.c index 310105d4e3de0..4221a99ee7f46 100644 --- a/drivers/infiniband/hw/hfi1/chip.c +++ b/drivers/infiniband/hw/hfi1/chip.c @@ -9850,6 +9850,7 @@ void hfi1_quiet_serdes(struct hfi1_pportdata *ppd) /* disable the port */ clear_rcvctrl(dd, RCV_CTRL_RCV_PORT_ENABLE_SMASK); + cancel_work_sync(&ppd->freeze_work); } static inline int init_cpu_counters(struct hfi1_devdata *dd)