All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] cls_cgroup: remove unneeded cgroup_lock
@ 2009-03-12  1:47 Li Zefan
       [not found] ` <49B869B2.1020303-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
  2009-03-12  2:41 ` Paul Menage
  0 siblings, 2 replies; 4+ messages in thread
From: Li Zefan @ 2009-03-12  1:47 UTC (permalink / raw)
  To: David Miller
  Cc: Paul Menage, Thomas Graf, LKML, Linux Containers, netdev,
	Andrew Morton

We can remove this lock here, since we are in cgroup write handler
and thus the cgrp is guaranteed to be valid, and no lock is needed
when writing a u32 variable.

Signed-off-by: Li Zefan <lizf@cn.fujitsuc.com>
---
 net/sched/cls_cgroup.c |    6 ------
 1 files changed, 0 insertions(+), 6 deletions(-)

diff --git a/net/sched/cls_cgroup.c b/net/sched/cls_cgroup.c
index 91a3db4..1ab4542 100644
--- a/net/sched/cls_cgroup.c
+++ b/net/sched/cls_cgroup.c
@@ -62,13 +62,7 @@ static u64 read_classid(struct cgroup *cgrp, struct cftype *cft)
 
 static int write_classid(struct cgroup *cgrp, struct cftype *cft, u64 value)
 {
-	if (!cgroup_lock_live_group(cgrp))
-		return -ENODEV;
-
 	cgrp_cls_state(cgrp)->classid = (u32) value;
-
-	cgroup_unlock();
-
 	return 0;
 }
 
-- 
1.5.4.rc3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH] cls_cgroup: remove unneeded cgroup_lock
@ 2009-03-12  1:47 Li Zefan
  0 siblings, 0 replies; 4+ messages in thread
From: Li Zefan @ 2009-03-12  1:47 UTC (permalink / raw)
  To: David Miller
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA, Linux Containers, LKML,
	Thomas Graf, Paul Menage, Andrew Morton

We can remove this lock here, since we are in cgroup write handler
and thus the cgrp is guaranteed to be valid, and no lock is needed
when writing a u32 variable.

Signed-off-by: Li Zefan <lizf-BthXqXjhjHWHlK3f2culvg@public.gmane.org>
---
 net/sched/cls_cgroup.c |    6 ------
 1 files changed, 0 insertions(+), 6 deletions(-)

diff --git a/net/sched/cls_cgroup.c b/net/sched/cls_cgroup.c
index 91a3db4..1ab4542 100644
--- a/net/sched/cls_cgroup.c
+++ b/net/sched/cls_cgroup.c
@@ -62,13 +62,7 @@ static u64 read_classid(struct cgroup *cgrp, struct cftype *cft)
 
 static int write_classid(struct cgroup *cgrp, struct cftype *cft, u64 value)
 {
-	if (!cgroup_lock_live_group(cgrp))
-		return -ENODEV;
-
 	cgrp_cls_state(cgrp)->classid = (u32) value;
-
-	cgroup_unlock();
-
 	return 0;
 }
 
-- 
1.5.4.rc3

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] cls_cgroup: remove unneeded cgroup_lock
       [not found] ` <49B869B2.1020303-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
@ 2009-03-12  2:41   ` Paul Menage
  0 siblings, 0 replies; 4+ messages in thread
From: Paul Menage @ 2009-03-12  2:41 UTC (permalink / raw)
  To: Li Zefan
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA, Linux Containers, LKML,
	Thomas Graf, Andrew Morton, David Miller

On Wed, Mar 11, 2009 at 6:47 PM, Li Zefan <lizf-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org> wrote:
> We can remove this lock here, since we are in cgroup write handler
> and thus the cgrp is guaranteed to be valid, and no lock is needed
> when writing a u32 variable.

There's no guarantee that the group isn't dead, so we could be writing
into a value that's never going to be used again, but I guess that's
not really a big deal.

Acked-by: Paul Menage <menage-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>

>
> Signed-off-by: Li Zefan <lizf-BthXqXjhjHWHlK3f2culvg@public.gmane.org>
> ---
>  net/sched/cls_cgroup.c |    6 ------
>  1 files changed, 0 insertions(+), 6 deletions(-)
>
> diff --git a/net/sched/cls_cgroup.c b/net/sched/cls_cgroup.c
> index 91a3db4..1ab4542 100644
> --- a/net/sched/cls_cgroup.c
> +++ b/net/sched/cls_cgroup.c
> @@ -62,13 +62,7 @@ static u64 read_classid(struct cgroup *cgrp, struct cftype *cft)
>
>  static int write_classid(struct cgroup *cgrp, struct cftype *cft, u64 value)
>  {
> -       if (!cgroup_lock_live_group(cgrp))
> -               return -ENODEV;
> -
>        cgrp_cls_state(cgrp)->classid = (u32) value;
> -
> -       cgroup_unlock();
> -
>        return 0;
>  }
>
> --
> 1.5.4.rc3
>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] cls_cgroup: remove unneeded cgroup_lock
  2009-03-12  1:47 [PATCH] cls_cgroup: remove unneeded cgroup_lock Li Zefan
       [not found] ` <49B869B2.1020303-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
@ 2009-03-12  2:41 ` Paul Menage
  1 sibling, 0 replies; 4+ messages in thread
From: Paul Menage @ 2009-03-12  2:41 UTC (permalink / raw)
  To: Li Zefan
  Cc: David Miller, Thomas Graf, LKML, Linux Containers, netdev,
	Andrew Morton

On Wed, Mar 11, 2009 at 6:47 PM, Li Zefan <lizf@cn.fujitsu.com> wrote:
> We can remove this lock here, since we are in cgroup write handler
> and thus the cgrp is guaranteed to be valid, and no lock is needed
> when writing a u32 variable.

There's no guarantee that the group isn't dead, so we could be writing
into a value that's never going to be used again, but I guess that's
not really a big deal.

Acked-by: Paul Menage <menage@google.com>

>
> Signed-off-by: Li Zefan <lizf@cn.fujitsuc.com>
> ---
>  net/sched/cls_cgroup.c |    6 ------
>  1 files changed, 0 insertions(+), 6 deletions(-)
>
> diff --git a/net/sched/cls_cgroup.c b/net/sched/cls_cgroup.c
> index 91a3db4..1ab4542 100644
> --- a/net/sched/cls_cgroup.c
> +++ b/net/sched/cls_cgroup.c
> @@ -62,13 +62,7 @@ static u64 read_classid(struct cgroup *cgrp, struct cftype *cft)
>
>  static int write_classid(struct cgroup *cgrp, struct cftype *cft, u64 value)
>  {
> -       if (!cgroup_lock_live_group(cgrp))
> -               return -ENODEV;
> -
>        cgrp_cls_state(cgrp)->classid = (u32) value;
> -
> -       cgroup_unlock();
> -
>        return 0;
>  }
>
> --
> 1.5.4.rc3
>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-03-12  2:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-12  1:47 [PATCH] cls_cgroup: remove unneeded cgroup_lock Li Zefan
     [not found] ` <49B869B2.1020303-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2009-03-12  2:41   ` Paul Menage
2009-03-12  2:41 ` Paul Menage
  -- strict thread matches above, loose matches on Subject: below --
2009-03-12  1:47 Li Zefan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.