diff --git a/net/netfilter/nf_queue.c b/net/netfilter/nf_queue.c index a6c81c04b3a5..26a4db5e17d4 100644 --- a/net/netfilter/nf_queue.c +++ b/net/netfilter/nf_queue.c @@ -66,6 +66,7 @@ static void nf_queue_entry_release_refs(struct nf_queue_entry *entry) if (state->sk) nf_queue_sock_put(state->sk); + dev_put(entry->skb->dev); #if IS_ENABLED(CONFIG_BRIDGE_NETFILTER) dev_put(entry->physin); dev_put(entry->physout); @@ -104,6 +105,7 @@ bool nf_queue_entry_get_refs(struct nf_queue_entry *entry) dev_hold(state->in); dev_hold(state->out); + dev_hold(entry->skb->dev); #if IS_ENABLED(CONFIG_BRIDGE_NETFILTER) dev_hold(entry->physin);