Re: linux-3.18.y: Add "kconfig: Fix warning "âjumpâ may be used uninitialized""

From: Sedat Dilek
Date: Wed Mar 04 2015 - 01:45:00 EST


On Fri, Feb 6, 2015 at 4:50 PM, Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Feb 06, 2015 at 04:40:28PM +0100, Sedat Dilek wrote:
>> Hi,
>>
>> I see the following...
>>
>> $ yes "" | make oldconfig && make silentoldconfig </dev/null
>> HOSTCC scripts/basic/fixdep
>> HOSTCC scripts/kconfig/conf.o
>> SHIPPED scripts/kconfig/zconf.tab.c
>> SHIPPED scripts/kconfig/zconf.lex.c
>> SHIPPED scripts/kconfig/zconf.hash.c
>> HOSTCC scripts/kconfig/zconf.tab.o
>> In file included from scripts/kconfig/zconf.tab.c:2537:0:
>> scripts/kconfig/menu.c: In function âget_symbol_strâ:
>> scripts/kconfig/menu.c:590:18: warning: âjumpâ may be used
>> uninitialized in this function [-Wmaybe-uninitialized]
>> jump->offset = strlen(r->s);
>> ^
>> scripts/kconfig/menu.c:551:19: note: âjumpâ was declared here
>> struct jump_key *jump;
>> ^
>> HOSTLD scripts/kconfig/conf
>> scripts/kconfig/conf --oldconfig Kconfig
>> #
>> # configuration written to .config
>> #
>> scripts/kconfig/conf --silentoldconfig Kconfig
>>
>> The fix is "kconfig: Fix warning "âjumpâ may be used uninitialized"" upstream.
>
>
> Sure, what's the git commit id of the patch in Linus's tree? That's
> annoying to me as well, thanks for reminding me about it.
>

Yesterday, I played with llvmlinux and this patch is also required for
Linux v3.10.y.

Checking for "Peter KÃmmel" shows no hits.

commit 2d560306096739e2251329ab5c16059311a151b0 upstream
"kconfig: Fix warning "âjumpâ may be used uninitialized""

The patch needs some adaptation to fit.

Unfortunately, I cannot add a "3.10" to the subject-line as it is
"UTF-8-truncated" (see attached file).

Shall I resend w/ all CCs and how can I fix the subject-line?

- Sedat -

[1] http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/log/?h=linux-3.10.y&qt=grep&q=Peter+K%C3%BCmmel
From 683b07dc2061ca8d4086d3480ca86cc9dad892c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Peter=20K=C3=BCmmel?= <syntheticpp@xxxxxxx>
Date: Tue, 4 Nov 2014 12:01:59 +0100
Subject: [PATCH] =?UTF-8?q?kconfig:=20Fix=20warning=20"=E2=80=98jump?=
=?UTF-8?q?=E2=80=99=20may=20be=20used=20uninitialized"?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Warning:
In file included from scripts/kconfig/zconf.tab.c:2537:0:
scripts/kconfig/menu.c: In function âget_symbol_strâ:
scripts/kconfig/menu.c:590:18: warning: âjumpâ may be used uninitialized in this function [-Wmaybe-uninitialized]
jump->offset = strlen(r->s);

Simplifies the test logic because (head && local) means (jump != 0)
and makes GCC happy when checking if the jump pointer was initialized.

Signed-off-by: Peter KÃmmel <syntheticpp@xxxxxxx>
Signed-off-by: Michal Marek <mmarek@xxxxxxx>
---
[ dileks: v2: Backported to fit v3.10 ]

scripts/kconfig/menu.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c
index fd3f0180e08f..6af1c42a9cf3 100644
--- a/scripts/kconfig/menu.c
+++ b/scripts/kconfig/menu.c
@@ -525,7 +525,7 @@ static void get_prompt_str(struct gstr *r, struct property *prop,
{
int i, j;
struct menu *submenu[8], *menu, *location = NULL;
- struct jump_key *jump;
+ struct jump_key *jump = NULL;

str_printf(r, _("Prompt: %s\n"), _(prop->text));
menu = prop->menu->parent;
@@ -563,7 +563,7 @@ static void get_prompt_str(struct gstr *r, struct property *prop,
str_printf(r, _(" Location:\n"));
for (j = 4; --i >= 0; j += 2) {
menu = submenu[i];
- if (head && location && menu == location)
+ if (jump && menu == location)
jump->offset = r->len - 1;
str_printf(r, "%*c-> %s", j, ' ',
_(menu_get_prompt(menu)));
--
2.3.1