diff options
author | Joel Becker <joel.becker@oracle.com> | 2010-10-15 22:03:09 +0200 |
---|---|---|
committer | Joel Becker <joel.becker@oracle.com> | 2010-10-15 22:03:09 +0200 |
commit | fc3718918f13ad72827d62d36ea0f5fb55090644 (patch) | |
tree | 4f9551256e02d08be37bab137f3d94182a67504c /include/net/cls_cgroup.h | |
parent | ocfs2: Add a mount option "coherency=*" to handle cluster coherency for O_DIR... (diff) | |
parent | ocfs2/cluster: Release debugfs file elapsed_time_in_ms (diff) | |
download | linux-fc3718918f13ad72827d62d36ea0f5fb55090644.tar.xz linux-fc3718918f13ad72827d62d36ea0f5fb55090644.zip |
Merge branch 'globalheartbeat-2' of git://oss.oracle.com/git/smushran/linux-2.6 into ocfs2-merge-window
Conflicts:
fs/ocfs2/ocfs2.h
Diffstat (limited to 'include/net/cls_cgroup.h')
-rw-r--r-- | include/net/cls_cgroup.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/include/net/cls_cgroup.h b/include/net/cls_cgroup.h index 726cc3536409..ef6c24a529e1 100644 --- a/include/net/cls_cgroup.h +++ b/include/net/cls_cgroup.h @@ -27,11 +27,17 @@ struct cgroup_cls_state #ifdef CONFIG_NET_CLS_CGROUP static inline u32 task_cls_classid(struct task_struct *p) { + int classid; + if (in_interrupt()) return 0; - return container_of(task_subsys_state(p, net_cls_subsys_id), - struct cgroup_cls_state, css)->classid; + rcu_read_lock(); + classid = container_of(task_subsys_state(p, net_cls_subsys_id), + struct cgroup_cls_state, css)->classid; + rcu_read_unlock(); + + return classid; } #else extern int net_cls_subsys_id; |