[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <7309912.xQAL2Br30t@amur.mch.fsc.net>
Date: Tue, 17 Dec 2019 13:56:25 +0100
From: Dietmar Hahn <dietmar.hahn@...fujitsu.com>
To: Andi Kleen <ak@...ux.intel.com>
Cc: linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
Al Viro <viro@....linux.org.uk>
Subject: Re: [PATCH] Fix a panic when core_pattern is set to "| prog..."
Am Montag, 16. Dezember 2019, 19:37:07 CET schrieb Andi Kleen:
> Dietmar Hahn <dietmar.hahn@...fujitsu.com> writes:
>
> > Hi,
> >
> > if the /proc/sys/kernel/core_pattern is set with a space between '|' and the
> > program and later a core file should be written the kernel panics.
> > This happens because in format_corename() the first part of cn.corename
> > is set to '\0' and later call_usermodehelper_exec() exits because of an
> > empty command path but with return 0. But no pipe is created and thus
> > cprm.file == NULL.
> > This leads in file_start_write() to the panic because of dereferencing
> > file_inode(file)->i_mode.
>
> It would seem better to just skip the spaces and DTRT?
This would be the normal case but the mistake happened accidently. And I was
really surprised to see the system panic after the segfault of a user program.
And it took a little bit time to find the cause ...
Dietmar.
> Of course doing the error check properly is a good idea anyways.
>
> -Andi
Powered by blists - more mailing lists