All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stanislaw Gruszka <sgruszka@redhat.com>
To: Felix Fietkau <nbd@nbd.name>
Cc: Tom Psyborg <pozega.tomislav@gmail.com>,
	linux-wireless@vger.kernel.org,
	Daniel Golle <daniel@makrotopia.org>,
	Mathias Kresin <dev@kresin.me>
Subject: Re: [PATCH v4 4/8] rt2800: fix registers init for MT7620
Date: Tue, 16 Oct 2018 13:21:03 +0200	[thread overview]
Message-ID: <20181016112102.GC2621@redhat.com> (raw)
In-Reply-To: <e18b2f17-9403-f17a-babb-c4f56dedd2ca@nbd.name>

On Tue, Oct 16, 2018 at 01:19:52PM +0200, Felix Fietkau wrote:
> > I have no idea how this could be related. But I think I found
> > somewhat reasonable explenation where the problem is.
> > I think below code :
> > 
> > 	if (a || b || c) {
> > 		CODE1();
> > 	} else if (c) {
> > 		CODE2();
> > 	}
> > 
> > can not be deterministic and can be compiled differently depending
> > on compiler version and used options. Sometimes it could result
> > in this 
> > 
> > 	if (a || b || c) {
> > 		CODE1();
> > 	}
> > 
> > and sometimes in this:
> > 
> > 	if (a || b) {
> > 		CODE1();
> > 	} else if (c) {
> > 		CODE2();
> > 	}
> > 
> > So that would explain the problems you see. And indeed patch
> > could cause regression on systems where second variant of
> > initalizing RT6352 registers was used.
> I don't see how that can be non-deterministic at all. The 'else if' part
> can only be hit if the first if did not match.

I meant non-deterministic during compilation process, when compiler
do or do not some optimizations or if compiler version differs.

Regards
Stanislaw

  reply	other threads:[~2018-10-16 11:24 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-12  8:56 [PATCH v4 0/8] rt2800: register programing tweaks and clean ups Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 1/8] rt2x00: remove unneeded check Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 2/8] rt2x00: remove confusing AGC register Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 3/8] rt2x00: update TX_SW_CFG2 value Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 4/8] rt2800: fix registers init for MT7620 Stanislaw Gruszka
2018-10-12 10:48   ` Tom Psyborg
2018-10-12 11:36     ` Stanislaw Gruszka
2018-10-12 11:51       ` Tom Psyborg
2018-10-12 12:03         ` Stanislaw Gruszka
2018-10-12 12:20           ` Tom Psyborg
2018-10-12 12:26             ` Stanislaw Gruszka
2018-10-12 12:41               ` Tom Psyborg
2018-10-16  8:09                 ` Stanislaw Gruszka
2018-10-16 11:19                   ` Felix Fietkau
2018-10-16 11:21                     ` Stanislaw Gruszka [this message]
2018-10-16 11:25                       ` Felix Fietkau
2018-10-16 11:32                   ` Tom Psyborg
2018-10-16 15:49                     ` Stanislaw Gruszka
2018-10-17 13:25                       ` Tom Psyborg
2018-10-19  9:00                         ` Stanislaw Gruszka
2018-10-19 14:21                           ` Tom Psyborg
2018-10-20  9:44                             ` Stanislaw Gruszka
2018-10-18 15:51                       ` Tom Psyborg
2018-10-16  8:11     ` Stanislaw Gruszka
2018-10-16 10:38       ` Daniel Golle
2018-11-02  2:07         ` [PATCH] mips: ralink: add accessors for MT7620 chipver and pkg Daniel Golle
2018-11-05 18:36           ` Paul Burton
2018-11-05 20:19             ` Daniel Golle
2018-11-05 23:05               ` Paul Burton
2018-11-05 23:27                 ` Tom Psyborg
2018-10-13  9:46   ` [PATCH v4 4/8] rt2800: fix registers init for MT7620 Kalle Valo
2018-10-16  8:02     ` Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 5/8] rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 6/8] rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620 Stanislaw Gruszka
2018-10-12 10:52   ` Tom Psyborg
2018-10-12 11:38     ` Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 7/8] rt2800: remove unneeded RT6352 check Stanislaw Gruszka
2018-10-12  8:56 ` [PATCH v4 8/8] rt2800: comment and simplify AGC init for RT6352 Stanislaw Gruszka

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=20181016112102.GC2621@redhat.com \
    --to=sgruszka@redhat.com \
    --cc=daniel@makrotopia.org \
    --cc=dev@kresin.me \
    --cc=linux-wireless@vger.kernel.org \
    --cc=nbd@nbd.name \
    --cc=pozega.tomislav@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.