lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aMlH4CcK_n1I1gY2@pathway.suse.cz>
Date: Tue, 16 Sep 2025 13:20:00 +0200
From: Petr Mladek <pmladek@...e.com>
To: Jinchao Wang <wangjinchao600@...il.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>, Baoquan He <bhe@...hat.com>,
	Yury Norov <yury.norov@...il.com>,
	Qianqiang Liu <qianqiang.liu@....com>,
	Simona Vetter <simona@...ll.ch>, Helge Deller <deller@....de>,
	Steven Rostedt <rostedt@...dmis.org>,
	John Ogness <john.ogness@...utronix.de>,
	Sergey Senozhatsky <senozhatsky@...omium.org>,
	Vivek Goyal <vgoyal@...hat.com>, Dave Young <dyoung@...hat.com>,
	Kees Cook <kees@...nel.org>, Tony Luck <tony.luck@...el.com>,
	"Guilherme G. Piccoli" <gpiccoli@...lia.com>,
	Thomas Zimmermann <tzimmermann@...e.de>,
	Ville Syrjälä <ville.syrjala@...ux.intel.com>,
	Shixiong Ou <oushixiong@...inos.cn>,
	Zsolt Kajtar <soci@....rulez.org>, Ingo Molnar <mingo@...nel.org>,
	Nam Cao <namcao@...utronix.de>,
	Jonathan Cameron <Jonathan.Cameron@...wei.com>,
	Joel Fernandes <joelagnelf@...dia.com>,
	Joel Granados <joel.granados@...nel.org>,
	Jason Gunthorpe <jgg@...pe.ca>, Sohil Mehta <sohil.mehta@...el.com>,
	Feng Tang <feng.tang@...ux.alibaba.com>,
	Sravan Kumar Gundu <sravankumarlpu@...il.com>,
	Douglas Anderson <dianders@...omium.org>,
	Thomas Gleixner <tglx@...utronix.de>,
	Anna Schumaker <anna.schumaker@...cle.com>,
	"Darrick J. Wong" <djwong@...nel.org>,
	Max Kellermann <max.kellermann@...os.com>,
	Yunhui Cui <cuiyunhui@...edance.com>, Tejun Heo <tj@...nel.org>,
	Luo Gengkun <luogengkun@...weicloud.com>,
	Li Huafei <lihuafei1@...wei.com>,
	Thorsten Blum <thorsten.blum@...ux.dev>,
	Yicong Yang <yangyicong@...ilicon.com>, linux-fbdev@...r.kernel.org,
	dri-devel@...ts.freedesktop.org, kexec@...ts.infradead.org,
	linux-hardening@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 5/9] panic: use panic_try_start() in vpanic()

On Mon 2025-08-25 10:29:33, Jinchao Wang wrote:
> vpanic() had open-coded logic to claim panic_cpu with atomic_try_cmpxchg.
> This is already handled by panic_try_start().
> 
> Switch to panic_try_start() and use panic_on_other_cpu() for the fallback
> path.
> 
> This removes duplicate code and makes panic handling consistent across
> functions.
> 
> --- a/kernel/panic.c
> +++ b/kernel/panic.c
> @@ -415,7 +415,6 @@ void vpanic(const char *fmt, va_list args)
>  	static char buf[1024];
>  	long i, i_next = 0, len;
>  	int state = 0;
> -	int old_cpu, this_cpu;
>  	bool _crash_kexec_post_notifiers = crash_kexec_post_notifiers;
>  
>  	if (panic_on_warn) {
> @@ -452,13 +451,10 @@ void vpanic(const char *fmt, va_list args)
>  	 * `old_cpu == this_cpu' means we came from nmi_panic() which sets
>  	 * panic_cpu to this CPU.  In this case, this is also the 1st CPU.
>  	 */

The above comment does not fit any longer. I think that it can
be removed, maybe except for the 1st paragraph.

> -	old_cpu = PANIC_CPU_INVALID;
> -	this_cpu = raw_smp_processor_id();
> -
>  	/* atomic_try_cmpxchg updates old_cpu on failure */

Also this comment should be removed.

> -	if (atomic_try_cmpxchg(&panic_cpu, &old_cpu, this_cpu)) {
> +	if (panic_try_start()) {
>  		/* go ahead */
> -	} else if (old_cpu != this_cpu)
> +	} else if (panic_on_other_cpu())
>  		panic_smp_self_stop();
>  
>  	console_verbose();

Otherwise, it looks good. And the comments might be removed
by a followup patch.

Best Regards,
Petr

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ