Re: [PATCH AUTOSEL 5.7 52/60] dyndbg: prefer declarative init in caller, to memset in callee

From: Greg Kroah-Hartman
Date: Tue Aug 11 2020 - 01:13:38 EST


On Mon, Aug 10, 2020 at 03:10:20PM -0400, Sasha Levin wrote:
> From: Jim Cromie <jim.cromie@xxxxxxxxx>
>
> [ Upstream commit 9c9d0acbe2793315fa6945a19685ad2a51fb281b ]
>
> ddebug_exec_query declares an auto var, and passes it to
> ddebug_parse_query, which memsets it before using it. Drop that
> memset, instead initialize the variable in the caller; let the
> compiler decide how to do it.
>
> Acked-by: <jbaron@xxxxxxxxxx>
> Signed-off-by: Jim Cromie <jim.cromie@xxxxxxxxx>
> Link: https://lore.kernel.org/r/20200719231058.1586423-10-jim.cromie@xxxxxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
> ---
> lib/dynamic_debug.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
> index e3755d1f74bd2..4f0bd560478f7 100644
> --- a/lib/dynamic_debug.c
> +++ b/lib/dynamic_debug.c
> @@ -327,7 +327,6 @@ static int ddebug_parse_query(char *words[], int nwords,
> pr_err("expecting pairs of match-spec <value>\n");
> return -EINVAL;
> }
> - memset(query, 0, sizeof(*query));
>
> if (modname)
> /* support $modname.dyndbg=<multiple queries> */
> @@ -445,7 +444,7 @@ static int ddebug_parse_flags(const char *str, unsigned int *flagsp,
> static int ddebug_exec_query(char *query_string, const char *modname)
> {
> unsigned int flags = 0, mask = 0;
> - struct ddebug_query query;
> + struct ddebug_query query = {};
> #define MAXWORDS 9
> int nwords, nfound;
> char *words[MAXWORDS];
> --
> 2.25.1
>

There's no need for this in stable kernels, please drop it from
everywhere.

thanks,

greg k-h