Re: [PATCH] perf: remove include of cgroup.h from perf_event.h

From: Ingo Molnar
Date: Wed Mar 06 2013 - 05:31:33 EST



* Stephane Eranian <eranian@xxxxxxxxxx> wrote:

> > - * This is a per-cpu dynamically allocated data structure.
> > - */
> > -struct perf_cgroup_info {
> > - u64 time;
> > - u64 timestamp;
> > -};
> > -
> > -struct perf_cgroup {
> > - struct cgroup_subsys_state css;
> > - struct perf_cgroup_info *info; /* timing info, one per cpu */
> > -};
> > -#endif
> > -
> > +struct perf_cgroup;
>
> The problem is that you have struct perf_cgroup in the struct perf_event
> structure. Today, this field is not referenced outside of kernel/events/core.c But
> it is available outside this file. If someday the field is reference, your changes
> will have to do reverted. So I am wondering what is the point of the change right
> now?

It's standard practice to not define the type for task_struct or other kernel
subsystems.

For example slab caches can be created via kmem_cache_create() anywhere in the tree,
but the internal structure is only known to the SLAB subsystem.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/