diff --git a/include/net/sch_generic.h b/include/net/sch_generic.h
index 712eb08699fb224ce0229cc62adfccf4ad2ab22b..e79bba4d97a3b0b51010d254552563b2d3d1bddb 100644
--- a/include/net/sch_generic.h
+++ b/include/net/sch_generic.h
@@ -179,12 +179,6 @@ static inline bool qdisc_run_begin(struct Qdisc *qdisc)
 		 */
 		smp_mb__before_atomic();
 
-		/* Paired with smp_mb__after_atomic() to make sure
-		 * STATE_MISSED checking is synchronized with clearing
-		 * in pfifo_fast_dequeue().
-		 */
-		smp_mb__before_atomic();
-
 		/* If the MISSED flag is set, it means other thread has
 		 * set the MISSED flag before second spin_trylock(), so
 		 * we can return false here to avoid multi cpus doing