Date: Mon, 5 Mar 2018 11:57:26 +0000 (UTC) From: Hans Petter Selasky <hselasky@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r330493 - head/sys/ofed/drivers/infiniband/core Message-ID: <201803051157.w25BvQ0X024422@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: hselasky Date: Mon Mar 5 11:57:26 2018 New Revision: 330493 URL: https://svnweb.freebsd.org/changeset/base/330493 Log: Make deletion of RoCE GID entries synchronous in ibcore. When a network device is departing, the RoCE GID entries should be cleared before the default L2 link layer address is freed. Else a NULL pointer access may happen. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/ofed/drivers/infiniband/core/ib_roce_gid_mgmt.c Modified: head/sys/ofed/drivers/infiniband/core/ib_roce_gid_mgmt.c ============================================================================== --- head/sys/ofed/drivers/infiniband/core/ib_roce_gid_mgmt.c Mon Mar 5 11:55:29 2018 (r330492) +++ head/sys/ofed/drivers/infiniband/core/ib_roce_gid_mgmt.c Mon Mar 5 11:57:26 2018 (r330493) @@ -362,6 +362,9 @@ roce_gid_delete_all_event(struct net_device *ndev) dev_hold(ndev); work->ndev = ndev; queue_work(roce_gid_mgmt_wq, &work->work); + + /* make sure job is complete before returning */ + flush_workqueue(roce_gid_mgmt_wq); } static int
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803051157.w25BvQ0X024422>