Re: [RFC] cgroup simplify space stripping

From: Jason Uhlenkott
Date: Sat Oct 27 2007 - 01:51:22 EST


On Wed, Oct 24, 2007 at 10:36:21 -0700, Paul Jackson wrote:
> From: Paul Jackson <pj@xxxxxxx>
>
> Simplify the space stripping code in cgroup file write.
>
> Signed-off-by: Paul Jackson <pj@xxxxxxx>
>
> ---
>
> This patch applies after both:
> Adrian Bunk's: [2.6 patch] kernel/cgroup.c: remove dead code
> pj's: [PATCH] cgroup brace coding style fix
>
> kernel/cgroup.c | 15 +++------------
> 1 file changed, 3 insertions(+), 12 deletions(-)
>
> --- 2.6.23-mm1.orig/kernel/cgroup.c 2007-10-24 10:03:11.847801501 -0700
> +++ 2.6.23-mm1/kernel/cgroup.c 2007-10-24 10:29:08.355032464 -0700
> @@ -1327,6 +1327,7 @@ static ssize_t cgroup_common_file_write(
> goto out1;
> }
> buffer[nbytes] = 0; /* nul-terminate */
> + strstrip(buffer); /* strip -just- trailing whitespace */
>
> mutex_lock(&cgroup_mutex);
>
> @@ -1347,19 +1348,9 @@ static ssize_t cgroup_common_file_write(
> clear_bit(CGRP_NOTIFY_ON_RELEASE, &cgrp->flags);
> break;
> case FILE_RELEASE_AGENT:
> - {
> - struct cgroupfs_root *root = cgrp->root;
> - /* Strip trailing newline */
> - if (nbytes && (buffer[nbytes-1] == '\n'))
> - buffer[nbytes-1] = 0;
> - /* We never write anything other than '\0'
> - * into the last char of release_agent_path,
> - * so it always remains a NUL-terminated
> - * string */
> - strncpy(root->release_agent_path, buffer, nbytes);
> - root->release_agent_path[nbytes] = 0;
> + BUG_ON(sizeof(cgrp->root->release_agent_path) < PATH_MAX);

Could be BUILD_BUG_ON, even.


> + strcpy(cgrp->root->release_agent_path, buffer);
> break;
> - }
> default:
> retval = -EINVAL;
> goto out2;
-
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/