mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
macsec: don't free NULL metadata_dst
Commit0a28bfd497added a metadata_dst to each tx_sc, but that's only allocated when macsec_add_dev has run, which happens after device registration. If the requested or computed SCI already exists, or if linking to the lower device fails, we will panic because metadata_dst_free can't handle NULL. Reproducer: ip link add link $lower type macsec ip link add link $lower type macsec Fixes:0a28bfd497("net/macsec: Add MACsec skb_metadata_dst Tx Data path support") Signed-off-by: Sabrina Dubroca <sd@queasysnail.net> Acked-by: Raed Salem <raeds@nvidia.com> Link: https://lore.kernel.org/r/60f2a1965fe553e2cade9472407d0fafff8de8ce.1663923580.git.sd@queasysnail.net Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
9258b8b1be
commit
c52add61c2
|
|
@ -3720,7 +3720,8 @@ static void macsec_free_netdev(struct net_device *dev)
|
|||
{
|
||||
struct macsec_dev *macsec = macsec_priv(dev);
|
||||
|
||||
metadata_dst_free(macsec->secy.tx_sc.md_dst);
|
||||
if (macsec->secy.tx_sc.md_dst)
|
||||
metadata_dst_free(macsec->secy.tx_sc.md_dst);
|
||||
free_percpu(macsec->stats);
|
||||
free_percpu(macsec->secy.tx_sc.stats);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user