diff --git a/net/sched/sch_netem.c b/net/sched/sch_netem.c
index 9685624f7bc779a942c822329a95aa0d656b79b9..bccd52b36e97be79d446e233dedc960fe65d5f16 100644
--- a/net/sched/sch_netem.c
+++ b/net/sched/sch_netem.c
@@ -272,7 +272,7 @@ static bool loss_gilb_ell(struct netem_sched_data *q)
 	case 2:
 		if (net_random() < clg->a2)
 			clg->state = 1;
-		if (clg->a3 > net_random())
+		if (net_random() > clg->a3)
 			return true;
 	}