bnxt: add a missing rcu synchronization
commit e5f6f564fd191d365fcd775c06a732a488205588 upstream.
Add a missing synchronize_net() call to avoid potential use after free,
since we explicitly call napi_hash_del() to factorize the RCU grace
period.
Fixes: c0c050c58d
("bnxt_en: New Broadcom ethernet driver.")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Michael Chan <michael.chan@broadcom.com>
Acked-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
959c8d63b4
commit
0ca38a1cb6
1 changed files with 4 additions and 0 deletions
|
@ -4250,6 +4250,10 @@ static void bnxt_del_napi(struct bnxt *bp)
|
|||
napi_hash_del(&bnapi->napi);
|
||||
netif_napi_del(&bnapi->napi);
|
||||
}
|
||||
/* We called napi_hash_del() before netif_napi_del(), we need
|
||||
* to respect an RCU grace period before freeing napi structures.
|
||||
*/
|
||||
synchronize_net();
|
||||
}
|
||||
|
||||
static void bnxt_init_napi(struct bnxt *bp)
|
||||
|
|
Loading…
Add table
Reference in a new issue