| Submitter | Daniel Wagner |
|---|---|
| Date | Sept. 12, 2012, 2:12 p.m. |
| Message ID | <1347459128-32236-3-git-send-email-wagi@monom.org> |
| Download | mbox | patch |
| Permalink | /patch/183383/ |
| State | Not Applicable |
| Delegated to: | David Miller |
| Headers | show |
Comments
On 2012/9/12 22:12, Daniel Wagner wrote: > From: Daniel Wagner <daniel.wagner@bmw-carit.de> > > task_cls_classid() should not be defined in case the configuration is > CONFIG_NET_CLS_CGROUP=n. The reason is that in a following patch the > net_cls_subsys_id will only be defined if CONFIG_NET_CLS_CGROUP!=n. > When net_cls is not built at all a callee should only get an empty > task_cls_classid() without any references to net_cls_subsys_id. > > Signed-off-by: Daniel Wagner <daniel.wagner@bmw-carit.de> > Acked-by: Tejun Heo <tj@kernel.org> > Cc: Gao feng <gaofeng@cn.fujitsu.com> > Cc: Jamal Hadi Salim <jhs@mojatatu.com> > Cc: John Fastabend <john.r.fastabend@intel.com> > Cc: Li Zefan <lizefan@huawei.com> > Cc: Neil Horman <nhorman@tuxdriver.com> > Cc: netdev@vger.kernel.org > Cc: cgroups@vger.kernel.org Acked-by: Li Zefan <lizefan@huawei.com> > --- > include/net/cls_cgroup.h | 11 ++++++----- > net/core/sock.c | 2 ++ > 2 files changed, 8 insertions(+), 5 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Patch
diff --git a/include/net/cls_cgroup.h b/include/net/cls_cgroup.h index e88527a..9bd5db9 100644 --- a/include/net/cls_cgroup.h +++ b/include/net/cls_cgroup.h @@ -17,7 +17,7 @@ #include <linux/hardirq.h> #include <linux/rcupdate.h> -#ifdef CONFIG_CGROUPS +#if IS_ENABLED(CONFIG_NET_CLS_CGROUP) struct cgroup_cls_state { struct cgroup_subsys_state css; @@ -26,7 +26,7 @@ struct cgroup_cls_state extern void sock_update_classid(struct sock *sk); -#ifdef CONFIG_NET_CLS_CGROUP +#if IS_BUILTIN(CONFIG_NET_CLS_CGROUP) static inline u32 task_cls_classid(struct task_struct *p) { int classid; @@ -41,7 +41,8 @@ static inline u32 task_cls_classid(struct task_struct *p) return classid; } -#else +#elif IS_MODULE(CONFIG_NET_CLS_CGROUP) + extern int net_cls_subsys_id; static inline u32 task_cls_classid(struct task_struct *p) @@ -63,7 +64,7 @@ static inline u32 task_cls_classid(struct task_struct *p) return classid; } #endif -#else +#else /* !CGROUP_NET_CLS_CGROUP */ static inline void sock_update_classid(struct sock *sk) { } @@ -72,5 +73,5 @@ static inline u32 task_cls_classid(struct task_struct *p) { return 0; } -#endif +#endif /* CGROUP_NET_CLS_CGROUP */ #endif /* _NET_CLS_CGROUP_H */ diff --git a/net/core/sock.c b/net/core/sock.c index 8f67ced..82cadc6 100644 --- a/net/core/sock.c +++ b/net/core/sock.c @@ -1223,6 +1223,7 @@ static void sk_prot_free(struct proto *prot, struct sock *sk) } #ifdef CONFIG_CGROUPS +#if IS_ENABLED(CONFIG_NET_CLS_CGROUP) void sock_update_classid(struct sock *sk) { u32 classid; @@ -1234,6 +1235,7 @@ void sock_update_classid(struct sock *sk) sk->sk_classid = classid; } EXPORT_SYMBOL(sock_update_classid); +#endif void sock_update_netprioidx(struct sock *sk, struct task_struct *task) {