Received: by 2002:a05:7412:f690:b0:e2:908c:2ebd with SMTP id ej16csp1067363rdb; Fri, 20 Oct 2023 07:37:05 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG9XwJttu2CwTJ3kcrOrJH7Wwm324U4qm7nKY+4Spg6fZTUKqQzpTRaZCX4DNAV9tWKy++8 X-Received: by 2002:a05:6a21:a59b:b0:17a:e941:b0a3 with SMTP id gd27-20020a056a21a59b00b0017ae941b0a3mr2304839pzc.39.1697812625592; Fri, 20 Oct 2023 07:37:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697812625; cv=none; d=google.com; s=arc-20160816; b=w2DtPIOYF5cMVuYTRgKbEaSMCTy+n+YMZr9zactPly4AQltakXuZNISyD1BzG+/SG7 h9bqR2kzyAK51cAYMT0b5x0dMFNVIwotMlJ0Vy/eHua9uePnbTT3GEUixOJuhtfm1uNU gvnNtmpQfcLJoSXCHsOQr60N8ccBulxZzoNqBR5XTv/ovIziBs77h2aS58NMcxnzoJNq AfT5WzD0WoH3S390dbZ35pvKMWC5HeS33nicljVwhA+tIXZCdQ+VInuVhxUYZBCdcmvE /rrejetf1Wf/kstnQux45y3yF5BcafGjA26eyHzMhdl4W142PYibsJ4zr20rU7hwjmBD cqEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=Z/6zKPKF3hdIP4o+3v8/dUx6MorHqNGqLwm78ILSxho=; fh=fhTRHUc7z+QF9ZUt9Vs/PL8TtAULyaFfMHXRdXMdMMo=; b=IdruhJW/FEBypMaK+Kx6FX169DY6Sxz1SMYsBJ2WXHIJ89m6CEHwuJZEFC1BMYRI9x kGghPboFEQ/8kp/j2cysA8nt6BIYH5/2VQ2G3jcvBaD93po74wZeGwvuOS5I/ucEKKw3 pt3cCic9ZBmly09b+h/MVe/Z1Wv+0CO9ZLVwe18MrIuiPfQyEtyjkwqAlerc+MnUT/GR 7tKSUUx/JDZtc4TMSh79jti66F1nNTlqPRju0oJP4BJghDqWTXddVG7SzBUHl6Yzsm+n nc9Ng5zIRZztbB2Z9E1sv19lqHj9Ly62wJfLZPTFLhGxHeaQ1voHazfflFqTsflACLHa iFbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@igalia.com header.s=20170329 header.b=pyHF96wx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id o8-20020a656a48000000b00569fd44093fsi2161731pgu.230.2023.10.20.07.37.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Oct 2023 07:37:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=fail header.i=@igalia.com header.s=20170329 header.b=pyHF96wx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 9C89D8027539; Fri, 20 Oct 2023 07:36:47 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1377546AbjJTOg3 (ORCPT + 99 others); Fri, 20 Oct 2023 10:36:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35340 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1377527AbjJTOg1 (ORCPT ); Fri, 20 Oct 2023 10:36:27 -0400 Received: from fanzine2.igalia.com (fanzine.igalia.com [178.60.130.6]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9F906D5E; Fri, 20 Oct 2023 07:36:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=igalia.com; s=20170329; h=Content-Transfer-Encoding:MIME-Version:Message-ID:Date:Subject: Cc:To:From:Sender:Reply-To:Content-Type:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=Z/6zKPKF3hdIP4o+3v8/dUx6MorHqNGqLwm78ILSxho=; b=pyHF96wxzujXx9RrIKtrBWqiF3 6vSMOQOaaD2cWlmevMRYIH6ElggbIoNHqQOp7z56/FaFfRBTWNabSYakdTpWdmXKyeAcpkC78G/3o i18hC83J4eS6+XH6izx8c43WYdQU98HR/SrWSAaEPczRVrS2saRIf1EA02U5Bjpyd2L1IPGOA9XnT 6pV3cLgYFQpaOfvQMySHh3R1zuaK3JptXC7zTdQ8qwwSG8cFHtxxE8/B30Ha7G/qH1TgwvzxX62f0 zPgcKAyv31Hcz7ub4U5lS//kfSaNkNgzkC4CjLX8za/cNCnANKs5n3XWoP6oVcGSdaABSSUFHWSC9 55ajVsIA==; Received: from [192.168.13.184] (helo=localhost) by fanzine2.igalia.com with esmtpsa (Cipher TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim) id 1qtqbu-003A2x-86; Fri, 20 Oct 2023 16:36:22 +0200 From: "Guilherme G. Piccoli" To: linux-alpha@vger.kernel.org, mattst88@gmail.com, ink@jurassic.park.msu.ru, richard.henderson@linaro.org Cc: linux-kernel@vger.kernel.org, kernel-dev@igalia.com, kernel@gpiccoli.net, macro@orcam.me.uk, "Guilherme G. Piccoli" , Petr Mladek Subject: [PATCH V6] alpha: Clean-up the panic notifier code Date: Fri, 20 Oct 2023 16:34:54 +0200 Message-ID: <20231020143616.23082-1-gpiccoli@igalia.com> X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Fri, 20 Oct 2023 07:36:47 -0700 (PDT) The alpha panic notifier has some code issues, not following the conventions of other notifiers. Also, it might halt the machine but still it is set to run as early as possible, which doesn't seem to be a good idea. So, let's clean the code and set the notifier to run as the latest, following the same approach other architectures are doing. Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Richard Henderson Reviewed-by: Petr Mladek Signed-off-by: Guilherme G. Piccoli --- V6: - Dropped the include removal (thanks Maciej/Petr!) - Rebased on top of v6.6-rc6 arch/alpha/kernel/setup.c | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/arch/alpha/kernel/setup.c b/arch/alpha/kernel/setup.c index c80258ec332f..8397ef1d4e11 100644 --- a/arch/alpha/kernel/setup.c +++ b/arch/alpha/kernel/setup.c @@ -47,13 +47,6 @@ #include #include -static int alpha_panic_event(struct notifier_block *, unsigned long, void *); -static struct notifier_block alpha_panic_block = { - alpha_panic_event, - NULL, - INT_MAX /* try to do it first */ -}; - #include #include #include @@ -434,6 +427,21 @@ static const struct sysrq_key_op srm_sysrq_reboot_op = { }; #endif +static int alpha_panic_event(struct notifier_block *this, + unsigned long event, void *ptr) +{ + /* If we are using SRM and serial console, just hard halt here. */ + if (alpha_using_srm && srmcons_output) + __halt(); + + return NOTIFY_DONE; +} + +static struct notifier_block alpha_panic_block = { + .notifier_call = alpha_panic_event, + .priority = INT_MIN, /* may not return, do it last */ +}; + void __init setup_arch(char **cmdline_p) { @@ -1426,19 +1434,6 @@ const struct seq_operations cpuinfo_op = { .show = show_cpuinfo, }; - -static int -alpha_panic_event(struct notifier_block *this, unsigned long event, void *ptr) -{ -#if 1 - /* FIXME FIXME FIXME */ - /* If we are using SRM and serial console, just hard halt here. */ - if (alpha_using_srm && srmcons_output) - __halt(); -#endif - return NOTIFY_DONE; -} - static __init int add_pcspkr(void) { struct platform_device *pd; -- 2.42.0