From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3E64E199931 for ; Tue, 2 Jun 2026 08:55:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780390547; cv=none; b=fuhY+eZ+0SB+lIIuPYdmrKvkdByhFYi6KtJH4IytU+ryQWLZbfXiQbPZcil0gSAQFl1+jgTp3qfTpfuPpYEcxm7e+GD7uiw0QP7TyvYfbahtP47qp8Ay5WqomDtyUw2ZRVn2CuB3zKZ9c76mgQuvpiifxNa2NAJWb/UTnBrcSIQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780390547; c=relaxed/simple; bh=Z6w4sVV6Y/MGRm/HDpSJCbsxtf6Fj65qLXimVXwN4j0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=h6v6gECKwBoBy57jJP5EVF1IWhW1nyUgLueoaWIq+Xd9KDtJaF/cr67oHxnFdom8K3/5rn4n5tTczmukU93ZXeInbfE3z3OQWsmUzVVvrYtTuw8kqeXJAxY+/7/cVWH8jj7zTSTJTatbqwz+fhmkQU/fNM+QCd0Z7wMXYixega0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=XHInzXLW; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="XHInzXLW" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-490a76757e5so17056705e9.2 for ; Tue, 02 Jun 2026 01:55:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1780390545; x=1780995345; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=q4vp2hRjYAf30dTYx0ooLx3waKeJ+Ae1hKG02oNbz80=; b=XHInzXLW/D7tEIlFydEZAHXTJeYlpIm0uDEioXCOTqyN1TqQfa+9mbRcJ6UpHqndUx D0Ajp8K7kPLcF8zT4ZVOck+QFnTy447W5ciueF+y1byP8Oq2P4+ach26WTsgG0mLJq7d 5xBOQ0s4DoLecY40Kig/dt62iMllhKL21LhnHoJKSUjHTACkqsAZvXhcUn0KQXD4VbC9 RbixyUH6AKE1iyDEBkGhc/T8KuHOHafpMC885kemqojYr+sgIATKkG4hZpIJMeJfT0EP SUpWtL0NxOYBS7p/GwVtuYs3KkOoeBQSZPphrvODheLUmxZVIUeSD8sMhegctuVnd+Qj usrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780390545; x=1780995345; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=q4vp2hRjYAf30dTYx0ooLx3waKeJ+Ae1hKG02oNbz80=; b=TJ0SUCMrUTvLP3ocpB08dwUh+epGbgiv3wfJON8TZhGw9xMHBRwzGkof3Uy4LzVr+h rVWj1r7A1Asc6wBLH4h/YfdPiO/qryzRldoXjLFVTG3S8OgmW7gJIsWTzFMKd/so4phb zx1ohMaEd+uM6AYc/R5gvfUmvlcskxNti5Nqx4o4xDdwUhLWVWBcWPUeBv8Zrps3B06Y 8OGyyO+A5iER595sHgzJbZYoadbMYnRN0ylMvRwIau1cuSJJWkEQzViWg0bV7S1UjS5K k6vlYqL+CoLu4Ibj998BWG1vu4B7TLs0BSvlk5U/ngwH60E2C3tF+vJmMXHstJYFhuOp 3y0A== X-Forwarded-Encrypted: i=1; AFNElJ/J7w+VVl6vgSCWN5QQNF2dhSOApSixT3eW7HZYm+cL8Dun5+eNSzGUDI0Ec81rsHUaHLJIbH2M2vFQnJM=@vger.kernel.org X-Gm-Message-State: AOJu0YxdYljMsnKN6qZiAMR6+nB2RG3+1heEW4Cv+PeH4ddENcvXu2Ea /aO3N8r6qYcvO7Z2zKME3krK4aOf7dFBcH9vmcIuN+7XUq31WpoSkdpTuZAYRg0OB0M= X-Gm-Gg: Acq92OFDy8/X90c0hKBZOlO4XeRTHi2i/jbEwqrimsiQGeEc5fqWDbkhl1WAC9VdoRq PzmoiFpMVgMwVgeCGkCeWcsnRHqjU9jSIgfEr0zhvwtWu2pFHMsL2SF/08FEX7iei5Fq4/V/0z+ woajUYpgZSAl5sbUcXgR6EklrKrR2k3ZEoxxZe4eavieNLCxGpaJdzas6m2zn2//XT/RZ+NLFsT YMDxf/AomGvg9dL6M6eC8SHCMJiHB1KfXWn9hnErCh2oju9UCherAqyk1ZzRrRbujNG68WLDMwk fEeMfl6+JcljHGEN8fn5QSA9LaOZKyTOQbXOzDlPigz+8ks2mrEcDky+PAZLEcV4MQilFlk8zmQ yPakME+NSc+zpldeTg9oVu1o2zOp6U+3QIPHDg4RGaQkEFnsvwgVD30/3SqNd9N8GLmhyLX8STO rjS4ug2tzFxgn7Jj/lQjXbgx2wqD2yzMqRR5fl X-Received: by 2002:a05:600c:5306:b0:490:aeae:1eea with SMTP id 5b1f17b1804b1-490aeae1f1cmr83670215e9.7.1780390544683; Tue, 02 Jun 2026 01:55:44 -0700 (PDT) Received: from pathway.suse.cz ([176.114.240.130]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-490aab4f87esm35666535e9.22.2026.06.02.01.55.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 02 Jun 2026 01:55:44 -0700 (PDT) From: Petr Mladek To: John Ogness Cc: Sergey Senozhatsky , Steven Rostedt , Marcos Paulo de Souza , Chris Down , linux-kernel@vger.kernel.org, Petr Mladek Subject: [PATCH v3 11/11] printk: Modify try_enable_default_console() to return error/success Date: Tue, 2 Jun 2026 10:53:12 +0200 Message-ID: <20260602085312.228251-12-pmladek@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260602085312.228251-1-pmladek@suse.com> References: <20260602085312.228251-1-pmladek@suse.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, try_enable_default_console() has a void return type, and its potential failures (specifically when console_call_setup() fails) are ignored by its caller, try_enable_console(). Modify try_enable_default_console() to return error/success, and update try_enable_console() to capture and propagate this error. With this change, try_enable_console() will no longer return success for a pre-enabled console if try_enable_default_console() failed (such as when newcon->setup() fails). While this might change existing behavior, it is the correct approach to ensure setup errors are not silently ignored or treated as successful registrations simply because the console was marked pre-enabled. Assisted-by: Gemini:gemini-3 # commit message Signed-off-by: Petr Mladek --- kernel/printk/printk.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index d62901a13bf7..61d3c8877737 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -4060,18 +4060,23 @@ static int try_enable_braille_console(struct console *newcon) } /* Try to enable the console unconditionally */ -static void try_enable_default_console(struct console *newcon) +static int try_enable_default_console(struct console *newcon) { + int err; + if (newcon->index < 0) newcon->index = 0; - if (console_call_setup(newcon, NULL) != 0) - return; + err = console_call_setup(newcon, NULL); + if (err) + return err; newcon->flags |= CON_ENABLED; if (newcon->device) newcon->flags |= CON_CONSDEV; + + return 0; } #define console_first() \ @@ -4124,7 +4129,9 @@ static int try_enable_console(struct console *newcon) */ if (hlist_empty(&console_list) || !console_first()->device || console_first()->flags & CON_BOOT) { - try_enable_default_console(newcon); + err = try_enable_default_console(newcon); + if (err != -ENOENT) + return err; } } -- 2.54.0