diff options
author | Mustafa Ismail <mustafa.ismail@intel.com> | 2016-08-23 02:01:47 +0200 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2016-08-24 17:25:34 +0200 |
commit | 7eaf8313b1cfe93417a22bdc3f7380cac2a3dc6d (patch) | |
tree | e1b47dcc88e26ab30f658651c1a681056f1e13c0 /drivers/infiniband | |
parent | i40iw: Add missing NULL check for MPA private data (diff) | |
download | linux-7eaf8313b1cfe93417a22bdc3f7380cac2a3dc6d.tar.xz linux-7eaf8313b1cfe93417a22bdc3f7380cac2a3dc6d.zip |
i40iw: Do not set self-referencing pointer to NULL after kfree
In i40iw_free_virt_mem(), do not set mem->va to NULL
after freeing it as mem->va is a self-referencing pointer
to mem.
Fixes: 4e9042e647ff ("i40iw: add hw and utils files")
Reported-by: Stefan Assmann <sassmann@redhat.com>
Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/hw/i40iw/i40iw_utils.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/i40iw/i40iw_utils.c b/drivers/infiniband/hw/i40iw/i40iw_utils.c index 0e8db0a35141..6fd043b1d714 100644 --- a/drivers/infiniband/hw/i40iw/i40iw_utils.c +++ b/drivers/infiniband/hw/i40iw/i40iw_utils.c @@ -673,8 +673,11 @@ enum i40iw_status_code i40iw_free_virt_mem(struct i40iw_hw *hw, { if (!mem) return I40IW_ERR_PARAM; + /* + * mem->va points to the parent of mem, so both mem and mem->va + * can not be touched once mem->va is freed + */ kfree(mem->va); - mem->va = NULL; return 0; } |