diff --git a/include/net/cls_cgroup.h b/include/net/cls_cgroup.h index 726cc353640988bd6fed9361f74cb8ef6dfbb9ce..dd1fdb8293f518d222be7601aaeb7009b3d8751b 100644 --- a/include/net/cls_cgroup.h +++ b/include/net/cls_cgroup.h @@ -45,7 +45,8 @@ static inline u32 task_cls_classid(struct task_struct *p) return 0; rcu_read_lock(); - id = rcu_dereference(net_cls_subsys_id); + id = rcu_dereference_index_check(net_cls_subsys_id, + rcu_read_lock_held()); if (id >= 0) classid = container_of(task_subsys_state(p, id), struct cgroup_cls_state, css)->classid;