linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Segher Boessenkool <segher@kernel.crashing.org>
To: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Cc: syzkaller@googlegroups.com, linuxppc-dev@lists.ozlabs.org,
	dvyukov@google.com
Subject: Re: [PATCH 1/2] powerpc/64s: Work around spurious warning on old gccs with -fsanitize-coverage
Date: Thu, 7 Feb 2019 00:37:37 -0600	[thread overview]
Message-ID: <20190207063736.GS14180@gate.crashing.org> (raw)
In-Reply-To: <20190207053324.17541-1-andrew.donnellan@au1.ibm.com>

On Thu, Feb 07, 2019 at 04:33:23PM +1100, Andrew Donnellan wrote:
> Some older gccs (<GCC 7), when invoked with -fsanitize-coverage=trace-pc,
> cause a spurious uninitialised variable warning in dt_cpu_ftrs.c:
> 
>   arch/powerpc/kernel/dt_cpu_ftrs.c: In function ‘cpufeatures_process_feature’:
>   arch/powerpc/kernel/dt_cpu_ftrs.c:686:7: warning: ‘m’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>     if (m->cpu_ftr_bit_mask)

It seems to me the warning is correct?  If enable_unknown is false and no
cpu_feature is found, it will in

	if (m->cpu_ftr_bit_mask)
		cur_cpu_spec->cpu_features |= m->cpu_ftr_bit_mask;

enable random features (whatever was last in the table), or indeed access
via NULL if the table is length 0?  So maybe this should be

	if (known && m->cpu_ftr_bit_mask)
		cur_cpu_spec->cpu_features |= m->cpu_ftr_bit_mask;

instead?  (The code would be much clearer if all the known vs. !known
codepath was fully separated here).


Segher

  parent reply	other threads:[~2019-02-07  6:45 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-07  5:33 [PATCH 1/2] powerpc/64s: Work around spurious warning on old gccs with -fsanitize-coverage Andrew Donnellan
2019-02-07  5:33 ` [PATCH 2/2] powerpc: Enable kcov Andrew Donnellan
2019-02-07  6:37 ` Segher Boessenkool [this message]
2019-02-07  6:59   ` [PATCH 1/2] powerpc/64s: Work around spurious warning on old gccs with -fsanitize-coverage Andrew Donnellan
2019-02-07  7:49     ` Segher Boessenkool
2019-02-08  0:34       ` Andrew Donnellan
2019-02-08  3:02         ` Michael Ellerman
2019-02-08  3:11           ` Andrew Donnellan
2019-02-08 15:41           ` Segher Boessenkool
2019-02-10  5:14             ` Andrew Donnellan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190207063736.GS14180@gate.crashing.org \
    --to=segher@kernel.crashing.org \
    --cc=andrew.donnellan@au1.ibm.com \
    --cc=dvyukov@google.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=syzkaller@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).