mirror of https://gitee.com/openkylin/linux.git
bnxt: add a missing rcu synchronization
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>
This commit is contained in:
parent
e47112d9d6
commit
e5f6f564fd
|
@ -4934,6 +4934,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…
Reference in New Issue