[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20140128125442.4bac748945b404179deb58ba@linux-foundation.org>
Date: Tue, 28 Jan 2014 12:54:42 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Sebastian Capella <sebastian.capella@...aro.org>
Cc: "Eric W. Biederman" <ebiederm@...ssion.com>,
"Pavel Machek" <pavel@....cz>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linaro-kernel@...ts.linaro.org, patches@...aro.org,
"Serge Hallyn" <serge.hallyn@...onical.com>,
"Stephen Warren" <swarren@...dia.com>,
"Jens Axboe" <axboe@...nel.dk>,
"Greg Kroah-Hartman" <gregkh@...uxfoundation.org>,
"Al Viro" <viro@...iv.linux.org.uk>
Subject: Re: [PATCH v3 1/2] init/do_mounts.c: ignore final \n in
name_to_dev_t
On Tue, 28 Jan 2014 10:59:26 -0800 Sebastian Capella <sebastian.capella@...aro.org> wrote:
> > Do you have any feedback for me on this?
> >
> > I'm happy do make any changes you think are correct, but I'm unsure if
> > you're asking me for option #3 above. It's quite an intrusive change,
> > and changes old, established code and I'd like confirmation that's what
> > you'd like before proceeding down that path.
> >
> > I've submitted patches with both options #1 and #2 above.
> >
> > Thanks,
> >
> > Sebastian
>
> Ping.
>
> Sorry for the lapse in attention to this.
>
> Could you please clarify what is needed for this to be acceptable?
> I'm a little confused about what is being asked of me.
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);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists