[PATCH v2] kexec/fs2dt: Check for NULL pointer in dt_copy_old_root_param()
Dave Young
dyoung at redhat.com
Thu Sep 29 01:29:11 PDT 2016
On 09/29/16 at 10:20am, Simon Horman wrote:
> [CC Dave Young]
>
> On Thu, Sep 29, 2016 at 01:29:13PM +0530, Madhavan Srinivasan wrote:
> > In dt_copy_old_root_param(), FILE * returned
> > from fopen is not checked for NULL pointer
> > before passinig to fclose(). This could trigger
> > a segfault. Patch to fix the same.
> >
> > Reviewed-by: Dave Young <dyoung at redhat.com>
>
> Probably Dave's tag should be dropped as that was for a somewhat
> different (though equally trivial) approach.
Simion, I think I'm fine with any of them.
>
> > Signed-off-by: Madhavan Srinivasan <maddy at linux.vnet.ibm.com>
> > ---
> > Changelog v1:
> > - Moved the check right after fopen
> >
> > kexec/fs2dt.c | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/kexec/fs2dt.c b/kexec/fs2dt.c
> > index 6ed2399759cf..5ba3ec0fa65c 100644
> > --- a/kexec/fs2dt.c
> > +++ b/kexec/fs2dt.c
> > @@ -524,6 +524,9 @@ static void dt_copy_old_root_param(void)
> > strcpy(filename, pathname);
> > strcat(filename, "bootargs");
> > fp = fopen(filename, "r");
> > + if (!fp)
> > + return;
> > +
>
> With the (!fp) conditional above the (fp) conditional below can be removed.
>
> > if (fp) {
> > if (getline(&last_cmdline, &len, fp) == -1)
> > die("unable to read %s\n", filename);
> > --
> > 2.7.4
> >
More information about the kexec
mailing list