diff options
Diffstat (limited to 'include/net/ipv6_frag.h')
| -rw-r--r-- | include/net/ipv6_frag.h | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/include/net/ipv6_frag.h b/include/net/ipv6_frag.h index 851029ecff13..0a4779175a52 100644 --- a/include/net/ipv6_frag.h +++ b/include/net/ipv6_frag.h @@ -67,7 +67,8 @@ ip6frag_expire_frag_queue(struct net *net, struct frag_queue *fq)  	struct sk_buff *head;  	rcu_read_lock(); -	if (fq->q.fqdir->dead) +	/* Paired with the WRITE_ONCE() in fqdir_pre_exit(). */ +	if (READ_ONCE(fq->q.fqdir->dead))  		goto out_rcu_unlock;  	spin_lock(&fq->q.lock);  |