LKML Archive on lore.kernel.org
 help / color / Atom feed
From: Feng Tang <feng.tang@intel.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: kernel test robot <oliver.sang@intel.com>,
	Barry Song <song.bao.hua@hisilicon.com>,
	Ingo Molnar <mingo@kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	lkp@lists.01.org, lkp@intel.com, ying.huang@intel.com,
	zhengjun.xing@intel.com, x86@kernel.org
Subject: Re: [genirq]  cbe16f35be:  will-it-scale.per_thread_ops -5.2% regression
Date: Wed, 28 Apr 2021 13:07:58 +0800
Message-ID: <20210428050758.GB52098@shbuild999.sh.intel.com> (raw)
In-Reply-To: <87fszcnecr.ffs@nanos.tec.linutronix.de>

Hi Thomas,

On Tue, Apr 27, 2021 at 01:42:12PM +0200, Thomas Gleixner wrote:
> Folks,
> 
> On Tue, Apr 27 2021 at 17:00, kernel test robot wrote:
> 
> > Greeting,
> >
> > FYI, we noticed a -5.2% regression of will-it-scale.per_thread_ops due to commit:
> >
> > commit: cbe16f35bee6880becca6f20d2ebf6b457148552 ("genirq: Add IRQF_NO_AUTOEN for request_irq/nmi()")
> > https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
> 
> this is the second report in the last week which makes not a lot of sense.
> And this oneis makes absolutely no sense at all.
> 
> This commit affects request_irq() and the related variants and has
> exactly ZERO influence on anything related to that test case simply
> because.
> 
> I seriously have to ask the question whether this test infrastructure is
> actually measuring what it claims to measure.
> 
> As this commit clearly _cannot_ have the 'measured' side effect, this
> points to some serious issue in the tests or the test infrastructure
> itself.

0day has reported about 20 similar cases that the bisected commit has
nothing to do with the benchmark case, and we were very confused too
back then. And our debug showed many of them changed the code alignment
of kernel data or text of other modules which is relevant with the
benchmark, though some cases are not well explained yet. Following are
links of some explained cases.

https://lore.kernel.org/lkml/20200305062138.GI5972@shao2-debian/ 
https://lore.kernel.org/lkml/20200330011254.GA14393@feng-iot/
https://lore.kernel.org/lkml/20201102091543.GM31092@shao2-debian/

And to debug code alignment case, one debug patch to force all
function address aligned to 32 bytes was merged in v5.9

09c60546f04f ./Makefile: add debug option to enable function aligned on 32 bytes


For this particular case, the commit changes the code size of
request_threaded_irq(), and many following functions' alignment
are changed.

So I extended the debug patch to force 64 bytes aligned, then
this commit will cause _no_ performance change for the same test
case on same platform.

diff --git a/Makefile b/Makefile
 
 ifdef CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B
-KBUILD_CFLAGS += -falign-functions=32
+KBUILD_CFLAGS += -falign-functions=64
 endif

Though I don't know the detail of how exactly this code alignment
affects the case. 

Thanks,
Feng

> Thanks,
> 
>         tglx

  parent reply index

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-27  9:00 kernel test robot
2021-04-27  9:20 ` Song Bao Hua (Barry Song)
2021-04-27 11:37   ` Thomas Gleixner
2021-04-27 11:42 ` Thomas Gleixner
2021-04-27 19:37   ` Thomas Gleixner
2021-04-28  8:36     ` Feng Tang
2021-04-28  5:07   ` Feng Tang [this message]
2021-04-28  7:01     ` Song Bao Hua (Barry Song)
2021-04-28  8:08       ` Feng Tang
2021-04-28  8:56         ` Thomas Gleixner
2021-04-28 15:23           ` [LKP] " Philip Li
2021-04-28 16:56             ` Thomas Gleixner

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=20210428050758.GB52098@shbuild999.sh.intel.com \
    --to=feng.tang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkp@intel.com \
    --cc=lkp@lists.01.org \
    --cc=mingo@kernel.org \
    --cc=oliver.sang@intel.com \
    --cc=song.bao.hua@hisilicon.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    --cc=ying.huang@intel.com \
    --cc=zhengjun.xing@intel.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

LKML Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git
	git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git
	git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git
	git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git
	git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git
	git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git
	git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git
	git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git
	git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git
	git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git
	git clone --mirror https://lore.kernel.org/lkml/10 lkml/git/10.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \
		linux-kernel@vger.kernel.org
	public-inbox-index lkml

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git