[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240515072231.z3wlyoblyc34ldmr@desk>
Date: Wed, 15 May 2024 00:22:31 -0700
From: Pawan Gupta <pawan.kumar.gupta@...ux.intel.com>
To: Dave Hansen <dave.hansen@...el.com>
Cc: Kalle Valo <kvalo@...nel.org>, Borislav Petkov <bp@...en8.de>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
Dave Hansen <dave.hansen@...ux.intel.com>,
"Rafael J. Wysocki" <rafael@...nel.org>, x86@...nel.org,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org,
regressions@...ts.linux.dev,
Jeff Johnson <quic_jjohnson@...cinc.com>,
Daniel Sneddon <daniel.sneddon@...ux.intel.com>
Subject: Re: [regression] suspend stress test stalls within 30 minutes
On Tue, May 14, 2024 at 09:10:07AM -0700, Dave Hansen wrote:
> On 5/14/24 06:17, Kalle Valo wrote:
> > The kernel we use in our ath11k testing has almost all kernel debug
> > features enabled so I decided disable all of them, which unsurprisingly
> > also fixed my suspend problems. So maybe this is something which happens
> > only when MITIGATION_IBRS_ENTRY and some debug option from 'Kernel
> > hacking' are both enabled?
>
> I had my money on DEBUG_ENTRY, but it doesn't look like you ever had it
> enabled.
>
> I've got basically two theories:
>
> One, the IBRS value is getting mucked up somewhere, either that %r15
> value is getting stepped on or the per-cpu value is corrupt and the
> WRMSR #GP's, causing the hang.
>
> Two, IBRS_{ENTER,EXIT} is called in a "wrong" context somewhere. Either
> it is clobbering something it shouldn't or it is assuming something is
> in place that is not (like a valid stack).
>
> But the whole "'sudo shutdown -h now' then suspend somehow immediately
> unstalls" thing is really perplexing. I hope Pawan has some ideas.
Nothing promising yet. I now have the system with the same model, but the
system is only booting in recovery mode with the config attached with the
report.
Kalle, I wanted to try reverting the below commits:
aa1567a7e644 ("intel_idle: Add ibrs_off module parameter to force-disable IBRS")
1e4d3001f59f ("x86/entry: Harden return-to-user")
c516213726fb ("x86/entry: Optimize common_interrupt_return()")
.. but I haven't reproduced the issue yet.
FYI, cmdline "spectre_v2=off" should have the same effect as
CONFIG_IBRS_ENTRY=n. Other interesting thing to try is cmdline
"dis_ucode_ldr".
Powered by blists - more mailing lists