cgroups: __rcu annotations
Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Acked-by: Paul Menage <menage@google.com> Cc: Li Zefan <lizf@cn.fujitsu.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org>
This commit is contained in:
parent
67bdbffd69
commit
2c392b8c34
@ -75,7 +75,7 @@ struct cgroup_subsys_state {
|
|||||||
|
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
/* ID for this css, if possible */
|
/* ID for this css, if possible */
|
||||||
struct css_id *id;
|
struct css_id __rcu *id;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* bits in struct cgroup_subsys_state flags field */
|
/* bits in struct cgroup_subsys_state flags field */
|
||||||
@ -205,7 +205,7 @@ struct cgroup {
|
|||||||
struct list_head children; /* my children */
|
struct list_head children; /* my children */
|
||||||
|
|
||||||
struct cgroup *parent; /* my parent */
|
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 */
|
/* Private pointers for each registered subsystem */
|
||||||
struct cgroup_subsys_state *subsys[CGROUP_SUBSYS_COUNT];
|
struct cgroup_subsys_state *subsys[CGROUP_SUBSYS_COUNT];
|
||||||
|
@ -1418,7 +1418,7 @@ struct task_struct {
|
|||||||
#endif
|
#endif
|
||||||
#ifdef CONFIG_CGROUPS
|
#ifdef CONFIG_CGROUPS
|
||||||
/* Control Group info protected by css_set_lock */
|
/* 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 */
|
/* cg_list protected by css_set_lock and tsk->alloc_lock */
|
||||||
struct list_head cg_list;
|
struct list_head cg_list;
|
||||||
#endif
|
#endif
|
||||||
|
@ -138,7 +138,7 @@ struct css_id {
|
|||||||
* is called after synchronize_rcu(). But for safe use, css_is_removed()
|
* is called after synchronize_rcu(). But for safe use, css_is_removed()
|
||||||
* css_tryget() should be used for avoiding race.
|
* css_tryget() should be used for avoiding race.
|
||||||
*/
|
*/
|
||||||
struct cgroup_subsys_state *css;
|
struct cgroup_subsys_state __rcu *css;
|
||||||
/*
|
/*
|
||||||
* ID of this css.
|
* ID of this css.
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user