int tcf_qevent_validate_change(struct tcf_qevent *qe, struct nlattr *block_index_attr,
                               struct netlink_ext_ack *extack);
 struct sk_buff *tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch, struct sk_buff *skb,
-                                 spinlock_t *root_lock, struct sk_buff **to_free, int *ret);
+                                 struct sk_buff **to_free, int *ret);
 int tcf_qevent_dump(struct sk_buff *skb, int attr_name, struct tcf_qevent *qe);
 #else
 static inline int tcf_qevent_init(struct tcf_qevent *qe, struct Qdisc *sch,
 
 static inline struct sk_buff *
 tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch, struct sk_buff *skb,
-                 spinlock_t *root_lock, struct sk_buff **to_free, int *ret)
+                 struct sk_buff **to_free, int *ret)
 {
        return skb;
 }
 
 EXPORT_SYMBOL(tcf_qevent_validate_change);
 
 struct sk_buff *tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch, struct sk_buff *skb,
-                                 spinlock_t *root_lock, struct sk_buff **to_free, int *ret)
+                                 struct sk_buff **to_free, int *ret)
 {
        struct tcf_result cl_res;
        struct tcf_proto *fl;
 
        fl = rcu_dereference_bh(qe->filter_chain);
 
-       if (root_lock)
-               spin_unlock(root_lock);
-
        switch (tcf_classify(skb, fl, &cl_res, false)) {
        case TC_ACT_SHOT:
                qdisc_qstats_drop(sch);
                return NULL;
        }
 
-       if (root_lock)
-               spin_lock(root_lock);
-
        return skb;
 }
 EXPORT_SYMBOL(tcf_qevent_handle);
 
 
                if (INET_ECN_set_ce(skb)) {
                        q->stats.prob_mark++;
-                       skb = tcf_qevent_handle(&q->qe_mark, sch, skb, root_lock, to_free, &ret);
+                       skb = tcf_qevent_handle(&q->qe_mark, sch, skb, to_free, &ret);
                        if (!skb)
                                return NET_XMIT_CN | ret;
                } else if (!red_use_nodrop(q)) {
 
                if (INET_ECN_set_ce(skb)) {
                        q->stats.forced_mark++;
-                       skb = tcf_qevent_handle(&q->qe_mark, sch, skb, root_lock, to_free, &ret);
+                       skb = tcf_qevent_handle(&q->qe_mark, sch, skb, to_free, &ret);
                        if (!skb)
                                return NET_XMIT_CN | ret;
                } else if (!red_use_nodrop(q)) {
        return ret;
 
 congestion_drop:
-       skb = tcf_qevent_handle(&q->qe_early_drop, sch, skb, root_lock, to_free, &ret);
+       skb = tcf_qevent_handle(&q->qe_early_drop, sch, skb, to_free, &ret);
        if (!skb)
                return NET_XMIT_CN | ret;