Re: [PATCH tip/core/rcu 33/48] cgroups: __rcu annotations

From: Paul Menage
Date: Tue May 04 2010 - 16:48:19 EST


On Tue, May 4, 2010 at 1:19 PM, Paul E. McKenney
<paulmck@xxxxxxxxxxxxxxxxxx> wrote:
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
> Cc: Paul Menage <menage@xxxxxxxxxx>
> Cc: Li Zefan <lizf@xxxxxxxxxxxxxx>

Acked-by: Paul Menage <menage@xxxxxxxxxx>

> ---
>  include/linux/cgroup.h |    4 ++--
>  include/linux/sched.h  |    2 +-
>  kernel/cgroup.c        |    2 +-
>  3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h
> index 8f78073..b147fd5 100644
> --- a/include/linux/cgroup.h
> +++ b/include/linux/cgroup.h
> @@ -75,7 +75,7 @@ struct cgroup_subsys_state {
>
>        unsigned long flags;
>        /* ID for this css, if possible */
> -       struct css_id *id;
> +       struct css_id __rcu *id;
>  };
>
>  /* bits in struct cgroup_subsys_state flags field */
> @@ -205,7 +205,7 @@ struct cgroup {
>        struct list_head children;      /* my children */
>
>        struct cgroup *parent;          /* my parent */
> -       struct dentry *dentry;          /* cgroup fs entry, RCU protected */
> +       struct dentry __rcu *dentry;    /* cgroup fs entry, RCU protected */
>
>        /* Private pointers for each registered subsystem */
>        struct cgroup_subsys_state *subsys[CGROUP_SUBSYS_COUNT];
> diff --git a/include/linux/sched.h b/include/linux/sched.h
> index dad7f66..7307c74 100644
> --- a/include/linux/sched.h
> +++ b/include/linux/sched.h
> @@ -1429,7 +1429,7 @@ struct task_struct {
>  #endif
>  #ifdef CONFIG_CGROUPS
>        /* Control Group info protected by css_set_lock */
> -       struct css_set *cgroups;
> +       struct css_set __rcu *cgroups;
>        /* cg_list protected by css_set_lock and tsk->alloc_lock */
>        struct list_head cg_list;
>  #endif
> diff --git a/kernel/cgroup.c b/kernel/cgroup.c
> index 3a53c77..5cfbc93 100644
> --- a/kernel/cgroup.c
> +++ b/kernel/cgroup.c
> @@ -138,7 +138,7 @@ struct css_id {
>         * is called after synchronize_rcu(). But for safe use, css_is_removed()
>         * css_tryget() should be used for avoiding race.
>         */
> -       struct cgroup_subsys_state *css;
> +       struct cgroup_subsys_state __rcu *css;
>        /*
>         * ID of this css.
>         */
> --
> 1.7.0
>
>
--
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/