Re: [PATCH] [26/48] Suspend2 2.1.9.8 for 2.6.12: 603-suspend2_common-headers.patch

Pekka Enberg
2005-07-06T14:37:14Z

On 7/6/05, Nigel Cunningham <nigel@suspend2.net> wrote:
> diff -ruNp 604-utility-header.patch-old/kernel/power/suspend2_core/utility.c 604-utility-header.patch-new/kernel/power/suspend2_core/utility.c
> --- 604-utility-header.patch-old/kernel/power/suspend2_core/utility.c 1970-01-01 10:00:00.000000000 +1000
> +++ 604-utility-header.patch-new/kernel/power/suspend2_core/utility.c 2005-07-05 23:48:59.000000000 +1000
> @@ -0,0 +1,46 @@
> +/*
> + * kernel/power/utility.c
> + *
> + * Copyright (C) 2004-2005 Nigel Cunningham <nigel@suspend2.net>
> + *
> + * This file is released under the GPLv2.
> + *
> + * Routines that only suspend uses at the moment, but which might move
> + * when we merge because they're generic.
> + */
> +
> +#include <linux/kernel.h>
> +#include <linux/module.h>
> +#include <linux/mm.h>
> +#include <linux/proc_fs.h>
> +#include <asm/string.h>
> +
> +#include "pageflags.h"
> +
> +/*
> + * suspend_snprintf
> + *
> + * Functionality : Print a string with parameters to a buffer of a
> + * limited size. Unlike vsnprintf, we return the number
> + * of bytes actually put in the buffer, not the number
> + * that would have been put in if it was big enough.
> + */
> +int suspend_snprintf(char * buffer, int buffer_size, const char *fmt, ...)
> +{
> + int result;
> + va_list args;
> +
> + if (!buffer_size) {
> + return 0;
> + }
> +
> + va_start(args, fmt);
> + result = vsnprintf(buffer, buffer_size, fmt, args);
> + va_end(args);
> +
> + if (result > buffer_size) {
> + return buffer_size;
> + }
> +
> + return result;
> +}
> diff -ruNp 604-utility-header.patch-old/kernel/power/suspend2_core/utility.h 604-utility-header.patch-new/kernel/power/suspend2_core/utility.h
> --- 604-utility-header.patch-old/kernel/power/suspend2_core/utility.h 1970-01-01 10:00:00.000000000 +1000
> +++ 604-utility-header.patch-new/kernel/power/suspend2_core/utility.h 2005-07-05 23:48:59.000000000 +1000
> @@ -0,0 +1,12 @@
> +/*
> + * kernel/power/suspend2_core/utility.h
> + *
> + * Copyright (C) 2004-2005 Nigel Cunningham <nigel@suspend2.net>
> + *
> + * This file is released under the GPLv2.
> + *
> + * Routines that only suspend uses at the moment, but which might move
> + * when we merge because they're generic.
> + */

Please do move these.

> +
> +extern int suspend_snprintf(char * buffer, int buffer_size, const char *fmt, ...);

What's wrong with regular snprintf?

Pekka