[PATCH v3 1/2] init/do_mounts.c: ignore final \n in name_to_dev_t
Sebastian Capella
sebastian.capella at linaro.org
Tue Jan 28 15:58:30 EST 2014
Quoting Andrew Morton (2014-01-28 12:54:42)
> The problem is that kernel/power/hibernate.c:resume_store() is handed a
> newline-terminated string, yes? And if it blindly hands that string
> over to name_to_dev_t(), name_to_dev_t() fails because the string is
> wrong.
>
> This is an oddity of the sysfs->kernel interface and altering
> name_to_dev_t doesn't really seem appropriate for this problem - it
> would be better to fix the caller to pass in the correct string.
>
> Something like...
>
> /*
> * Clean up a string which may have leading and/or trailing whitespace (as
> * defined by isspace()) by trimming off that whitespace. Returns an address
> * which the caller must kfree(), or NULL on error.
> */
> char *strim_copy(const char *s, gfp_t gfp)
> {
> char *ret = kstrdup(skip_spaces(s), gfp);
>
> if (ret)
> strim(ret);
> return ret;
> }
> EXPORT_SYMBOL(strim_copy);
Hi Andrew,
Thanks, this is similar, but tidier than my original patch. I'll
fix up and repost the patch with a fix like what you're proposing.
Thanks!
Sebastian
More information about the linux-arm-kernel
mailing list