diff --git a/net/sched/act_api.c b/net/sched/act_api.c index 92477d51c49d..52394e45bac5 100644 --- a/net/sched/act_api.c +++ b/net/sched/act_api.c @@ -493,7 +493,6 @@ int tcf_idr_check_alloc(struct tc_action_net *tn, u32 *index, u32 max; if (*index) { -again: rcu_read_lock(); p = idr_find(&idrinfo->action_idr, *index); @@ -502,7 +501,7 @@ again: * index but did not assign the pointer yet. */ rcu_read_unlock(); - goto again; + return -EAGAIN; } if (!p) {