From nobody Wed Feb 11 11:32:11 2026 Received: from fout4-smtp.messagingengine.com (fout4-smtp.messagingengine.com [103.168.172.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AF18075802; Wed, 22 May 2024 06:30:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.147 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359427; cv=none; b=pclrtPDjPY0coJp9z+JogEF20v1TqiuXmip0pheaphmCKZb/dUFlg6dosxN5JdJd2hEo1P5c3gZEtMXsqyS6NjbTTISkHKkaYhmey9jfA8ZVaqqEROywAkUc862x6SKgo8bPsKTvvLAOpRYENKXpcWI92eeEgC3tvo0UAftI/ls= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359427; c=relaxed/simple; bh=xXIJHAJOc6onemD12GizOeep+GRhVclxjz9KYi4R0ZU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TC7nYBH86DZoSUzdOYhZNAkqi7PJMMq+EaxdzWBfjTE+BA4DrriOo3/JRJcVlXFgWcYMWHbpIx4KMiivd8tBGQ8bb3SX959PSTz2dJ0+puzgzo4o/wmzAHBzgbdb/VLYnAe5laFNCIljZ2XnclV9DIuETqL78h5sJPQbYaITXtM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com; spf=pass smtp.mailfrom=flygoat.com; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b=szvRktf/; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=EzsOzcR3; arc=none smtp.client-ip=103.168.172.147 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flygoat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b="szvRktf/"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="EzsOzcR3" Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfout.nyi.internal (Postfix) with ESMTP id BDB5E1380101; Wed, 22 May 2024 02:30:24 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Wed, 22 May 2024 02:30:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=flygoat.com; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1716359424; x=1716445824; bh=eTTfNISa1AvyB5+NKyzaR4LUuaJMzDBXdrMDNNsuz0c=; b= szvRktf/zQm81a81EArLjk1aYrk9e+sE7xY/1DEwlLCkZGZBqttdgPSyy5yi/F5R djH0dhkwNWwblCyIbxuj7iNa8j3XQDV6A8862cBHX1+r/gViF2EhhBV92rfE/XPj 5bLOgnN/J6+EzGAfdmJCy2fiKb5ASM46KieIV75+Yh6g9GhA0bleYoNyhOBd7wgg wJxw+AotqA9FcKCcsHARGB0a6+LGzM9Xly386pLPGrytB76lxTsifsh30Qqfv0Jd GL+ZhazfPY6Znl2DhcIzs7MdsEr3XPodmc5LiRU2pJ31L+nIimTFwptWUYNwC4iZ OVtwO2Cn5zHTSs8WUkheww== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1716359424; x= 1716445824; bh=eTTfNISa1AvyB5+NKyzaR4LUuaJMzDBXdrMDNNsuz0c=; b=E zsOzcR3M9FyoJ0IxhT5AAsEGdMfPVy5uwVKgP0tPp/bHYdj354Yngs2GNOFnDCmE 9RhVsdOHofiPqsJMDWJq4OtUW/y5uilV/H5UquvyeVCF4sTQ+IdFu9vwEnWRVEAx FqUdS4zWoy82Civ05Mlkj2Y4DdIBIOcePaWJTqpVZzBcjWPHvxfVkrt4Lg7/0pka 315SBm9oGuM98LdbFWZAnTMw+CaU5SBC743gvZNnbjok8QO86zhDx89hHVdmTklJ mSqn9QZT1pZ1LOTgrHQtLSwR6dtUs6N9ZTKnrkwxN9iiYCzdkg5v11NBdlo2OxZQ XZH5Es9whke3iysqTA6Bg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeifedgleekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephfffufggtgfgkfhfjgfvvefosehtjeertdertdejnecuhfhrohhmpeflihgr gihunhcujggrnhhguceojhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomheqne cuggftrfgrthhtvghrnhepvdekiefhfeevkeeuveetfeelffekgedugefhtdduudeghfeu veegffegudekjeelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepjhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomh X-ME-Proxy: Feedback-ID: ifd894703:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 22 May 2024 02:30:23 -0400 (EDT) From: Jiaxun Yang Date: Wed, 22 May 2024 07:30:20 +0100 Subject: [PATCH v2 1/4] LoongArch: Fix built-in DTB detection Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20240522-loongarch-booting-fixes-v2-1-727edb96e548@flygoat.com> References: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> In-Reply-To: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> To: Huacai Chen , Binbin Zhou Cc: loongarch@lists.linux.dev, linux-kernel@vger.kernel.org, Jiaxun Yang , stable@vger.kernel.org X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1332; i=jiaxun.yang@flygoat.com; h=from:subject:message-id; bh=xXIJHAJOc6onemD12GizOeep+GRhVclxjz9KYi4R0ZU=; b=owGbwMvMwCXmXMhTe71c8zDjabUkhjTfCf/ywt8wbr/2+qDjngdndXPK5m78L9S8sz9ppYbes 9/XNu161FHKwiDGxSArpsgSIqDUt6Hx4oLrD7L+wMxhZQIZwsDFKQAT8X7EyDA1yLFYNXvWmu/d 5R9yBTyTfgvx1iZUrQk6/uL3i0YmLVtGhqMKCn9+Pa6uXyugssZOjqFiq+4C7i/c8rOfy7yoX/b BkgkA X-Developer-Key: i=jiaxun.yang@flygoat.com; a=openpgp; fpr=980379BEFEBFBF477EA04EF9C111949073FC0F67 fdt_check_header(__dtb_start) will always success because kernel provided a dummy dtb here, thus fdt passed from firmware will never be taken. Fix by trying to utilise __dtb_start only when CONFIG_BUILTIN_DTB is enabled. Fixes: 5f346a6e5970 ("LoongArch: Allow device trees be built into the kerne= l") Cc: stable@vger.kernel.org Signed-off-by: Jiaxun Yang --- arch/loongarch/kernel/setup.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/loongarch/kernel/setup.c b/arch/loongarch/kernel/setup.c index 60e0fe97f61a..ea6d5db6c878 100644 --- a/arch/loongarch/kernel/setup.c +++ b/arch/loongarch/kernel/setup.c @@ -275,16 +275,18 @@ static void __init arch_reserve_crashkernel(void) static void __init fdt_setup(void) { #ifdef CONFIG_OF_EARLY_FLATTREE - void *fdt_pointer; + void *fdt_pointer =3D NULL; =20 /* ACPI-based systems do not require parsing fdt */ if (acpi_os_get_root_pointer()) return; =20 +#ifdef CONFIG_BUILTIN_DTB /* Prefer to use built-in dtb, checking its legality first. */ if (!fdt_check_header(__dtb_start)) fdt_pointer =3D __dtb_start; - else +#endif + if (!fdt_pointer) fdt_pointer =3D efi_fdt_pointer(); /* Fallback to firmware dtb */ =20 if (!fdt_pointer || fdt_check_header(fdt_pointer)) --=20 2.43.0 From nobody Wed Feb 11 11:32:11 2026 Received: from fout4-smtp.messagingengine.com (fout4-smtp.messagingengine.com [103.168.172.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C56B57BB19; Wed, 22 May 2024 06:30:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.147 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359428; cv=none; b=j1cHjRpz9IDM/W36IpjbTUFjgUheKiY8E/DqWchwydZXqWeluN4XEaO3JWYaEk8Zc6LlYWHosTDNhrsQV4UCoKX1sn10BG8JC9YafICqQUhaefclcpF8otwu9mxSh744SMtcv00E6P4h9xFjEWUVu90Lga1Wuk9KTCyLu8P0XqQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359428; c=relaxed/simple; bh=yVZuZGhQZlh0GBb5JOMcxygXqnWx2vLCWpjVfeLHzuM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=i9tEEZzc6k+O+MRKKyQGXd+jfTq70EOA1SWG1h7rXlH8h6cqfsHAEZhoESTW2mn1OOPKEfebYcPAgMm9TwEDXMIznzDEfolJvB0YY6+XGFlkFBilUg9pR/+hYtq4mdTn091s9pftFwiejyYncy9D8JP7vTrn6zOXcAXajQrWxpU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com; spf=pass smtp.mailfrom=flygoat.com; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b=sKEp+mbL; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=O+xs9O7P; arc=none smtp.client-ip=103.168.172.147 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flygoat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b="sKEp+mbL"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="O+xs9O7P" Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfout.nyi.internal (Postfix) with ESMTP id EE30C138013A; Wed, 22 May 2024 02:30:25 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Wed, 22 May 2024 02:30:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=flygoat.com; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1716359425; x=1716445825; bh=p2kGiIFKBT2fprtsSCD0V29yACfwyWhwUJ1YJx6S6zY=; b= sKEp+mbL+1SBLXJxbQxpcLEtCe61MhItTeOUfSkS4At++p3TTyxzn96POgYe0rlp Z/OkPq6eWDnA2xdbYxS8xX+1pTbXv9FeIEE35T4plFpcio8Ta4QM/fd5NIzYeFX8 jnwsYoEZfdNURrt55id9daj6ifRqfFuPHaidwqpf0I6xUTbDRSD0dCq8zPz3XLQD TCnxsjSgL3T53VZ1p3ebuqaoWQcwBEX0aKuJuTEGSg+QecU8PWeiePDoyQewjxgs 2kCSavbigmplHG9CAc35H8nHEYNe2PQMQIAsMpp0S7amcmQMmIRimKHB3RDccfC9 CHL7KqTK2Zx3AP5TC0EUfg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1716359425; x= 1716445825; bh=p2kGiIFKBT2fprtsSCD0V29yACfwyWhwUJ1YJx6S6zY=; b=O +xs9O7POV4ctK95Xav1n+MZfyzxptnN8L0mpWyoj1s9C3Jc1rS4y8UAgUwGI7GnJ mrySG6dy7M2/tgaElli+NWhHJ0oDZoGIgKbEw5qMzBFRpkpgQs5fZP64DHA5s4ga xODbMA6my83O/xyWQgSwNjOd74gYbaYDYKa/K81iBnuT0VGzBCDFM4fdJLedO83t 35QPgGIK7AknQ5PdijYbcHZdxvxMVo19gFnJp4W11uIK9R4+m15yrKtTTCr5K/TR k+E/mw081LWLmyowJud9UVl2fkNXCpXSGwjQuIdBy3Tq16xQ1EGIDrVYDIJadenk ea26eWf11DZvtnFIv86JQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeifedgleekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephfffufggtgfgkfhfjgfvvefosehtjeertdertdejnecuhfhrohhmpeflihgr gihunhcujggrnhhguceojhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomheqne cuggftrfgrthhtvghrnhepvdekiefhfeevkeeuveetfeelffekgedugefhtdduudeghfeu veegffegudekjeelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepjhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomh X-ME-Proxy: Feedback-ID: ifd894703:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 22 May 2024 02:30:24 -0400 (EDT) From: Jiaxun Yang Date: Wed, 22 May 2024 07:30:21 +0100 Subject: [PATCH v2 2/4] LoongArch: smp: Add all CPUs enabled by fdt to NUMA node 0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20240522-loongarch-booting-fixes-v2-2-727edb96e548@flygoat.com> References: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> In-Reply-To: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> To: Huacai Chen , Binbin Zhou Cc: loongarch@lists.linux.dev, linux-kernel@vger.kernel.org, Jiaxun Yang , stable@vger.kernel.org X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1173; i=jiaxun.yang@flygoat.com; h=from:subject:message-id; bh=yVZuZGhQZlh0GBb5JOMcxygXqnWx2vLCWpjVfeLHzuM=; b=owGbwMvMwCXmXMhTe71c8zDjabUkhjTfCf/i38wyc/PVFnjwk2GbR9v31gbjL4vYWjeyLnDlv 8zBaefcUcrCIMbFICumyBIioNS3ofHigusPsv7AzGFlAhnCwMUpABNZPZ2RYdVnSfZv8iZnIhm9 TwtP+H/5/80tarkTHl57UWahl+5/lo/hv6fW0Vlcx7e3WV8pnjeposG/cgvrU979EvOnfFz77PG HDUwA X-Developer-Key: i=jiaxun.yang@flygoat.com; a=openpgp; fpr=980379BEFEBFBF477EA04EF9C111949073FC0F67 NUMA enabled kernel on FDT based machine fails to boot because CPUs are all in NUMA_NO_NODE and mm subsystem won't accept that. Fix by adding them to default NUMA node for now. Cc: stable@vger.kernel.org Fixes: 88d4d957edc7 ("LoongArch: Add FDT booting support from efi system ta= ble") Signed-off-by: Jiaxun Yang --- arch/loongarch/kernel/smp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/loongarch/kernel/smp.c b/arch/loongarch/kernel/smp.c index 0dfe2388ef41..866757b76ecb 100644 --- a/arch/loongarch/kernel/smp.c +++ b/arch/loongarch/kernel/smp.c @@ -273,7 +273,6 @@ static void __init fdt_smp_setup(void) =20 if (cpuid =3D=3D loongson_sysconf.boot_cpu_id) { cpu =3D 0; - numa_add_cpu(cpu); } else { cpu =3D cpumask_next_zero(-1, cpu_present_mask); } @@ -283,6 +282,10 @@ static void __init fdt_smp_setup(void) set_cpu_present(cpu, true); __cpu_number_map[cpuid] =3D cpu; __cpu_logical_map[cpu] =3D cpuid; + + early_numa_add_cpu(cpu, 0); + set_cpuid_to_node(cpuid, 0); + numa_add_cpu(cpu); } =20 loongson_sysconf.nr_cpus =3D num_processors; --=20 2.43.0 From nobody Wed Feb 11 11:32:11 2026 Received: from fhigh2-smtp.messagingengine.com (fhigh2-smtp.messagingengine.com [103.168.172.153]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EA6CB7CF34; Wed, 22 May 2024 06:30:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.153 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359430; cv=none; b=QK4m4jK3PnGfTtuLg/0PY5d3n3htoLcpFSn0R/YSoQxaV9EPWOxbcrdDKLUj6+VG+VJPGg3hA/AEgjtRg4dzbd+VoTCEDHOJaH466jmN1saGYXtsyo4gAUa+L19DdCfoa8rzGodDzRVvCeBQxJftwOW8w7bP5FujQkX65Hx/PW4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359430; c=relaxed/simple; bh=gTmfR3TyuSkIyI33dPFwnMQoUU/REBQal1l+rTKDhxc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=N/3Jfthonr0t+GvMTMlcv3Wlql7TQ/GH04Am/O5WIAHLFUOlY9BJiLG0WesdX/Ez7qrwhLXSIutBMQ1SATldC3r6gUHPHaDZS7L6zEILL9J+J7qxjsxNy8E8vk2i+rXtEReIo4fr81JiGVMJDzPUaeDUIZMXCPPtiZITLG1aA58= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com; spf=pass smtp.mailfrom=flygoat.com; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b=Sbs2rTEp; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=ZVl3AV+Y; arc=none smtp.client-ip=103.168.172.153 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flygoat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b="Sbs2rTEp"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="ZVl3AV+Y" Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailfhigh.nyi.internal (Postfix) with ESMTP id 2E9CF11401ED; Wed, 22 May 2024 02:30:27 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Wed, 22 May 2024 02:30:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=flygoat.com; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1716359427; x=1716445827; bh=OvjxMEn+h3QhgfDTBmqSa7RU1eI0gRXkjUhWMA2M8CI=; b= Sbs2rTEpPHwnXO+ueozjdV8wogVpiRUQLzy6Y8vha241TwXhjJP035PgrHYpjMQd W1euniPLVLKDiW8PKigPCzrsd0hQD+GwMxtBW2hKmYngW48+f2RnhzyEWqMarFTQ V0nYlpMvHc6rKCHx0tV4KtfqFor9RevBrrQKELn0pI+EXZC9lAjdljf1g3RmFmWL N5XjuhEjHmSX4AJSFYzP+W+MtfAjnQoJ8OiI1q4A2ob+PYXAVohmbJ6l3D2OQroL RUEdz3bJoJNhlO/bPYCVkOzR+5Nw3vN+0Zzy2G/YSkU/Mdny5LjoYN4IkSWK2QK1 U1PuitZt77Mo2PSBqwvbOQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1716359427; x= 1716445827; bh=OvjxMEn+h3QhgfDTBmqSa7RU1eI0gRXkjUhWMA2M8CI=; b=Z Vl3AV+YD65CvfNH8uYxpabT+WolEoUwlwRr5ZZetxpQH23kroY+LcBhIl9zZGUqT Hyd3STJKZEaSK+lifIDYQQlTWGQATwMzu4ysKLIjAfLai53kcGNF1kbl/KGfW9El OA/6Yw2kGwIx9/mAfE+PsPgPv4/6TiTcult82iEGWdhGbWmyCw+7a+0ctzW2h8Y2 9IklLroF4Vrpinu9sidNSDQXULqn30R/VevP2MRtUnoC7ixRcN2D4qBcyNtmjcNT FQpX/pFErjVBZD4wC1Cw/M/TcmM8otTZrKCZjbhtI0kQ3YDXT5ssV3h7jFbUqcCG AukCrQEOoJgnAiLOJRGmw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeifedgleekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephfffufggtgfgkfhfjgfvvefosehtjeertdertdejnecuhfhrohhmpeflihgr gihunhcujggrnhhguceojhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomheqne cuggftrfgrthhtvghrnhephefgueffudegueeiveefleelhfevhfdtudelhefgvdegvefh ieelveevffduvdfgnecuffhomhgrihhnpehhvggrugdrshgspdhhvggruggvrhdrohhrgh dprhgrmhdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhl fhhrohhmpehjihgrgihunhdrhigrnhhgsehflhihghhorghtrdgtohhm X-ME-Proxy: Feedback-ID: ifd894703:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 22 May 2024 02:30:26 -0400 (EDT) From: Jiaxun Yang Date: Wed, 22 May 2024 07:30:22 +0100 Subject: [PATCH v2 3/4] LoongArch: Fix entry point in image header Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20240522-loongarch-booting-fixes-v2-3-727edb96e548@flygoat.com> References: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> In-Reply-To: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> To: Huacai Chen , Binbin Zhou Cc: loongarch@lists.linux.dev, linux-kernel@vger.kernel.org, Jiaxun Yang , stable@vger.kernel.org X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=2063; i=jiaxun.yang@flygoat.com; h=from:subject:message-id; bh=gTmfR3TyuSkIyI33dPFwnMQoUU/REBQal1l+rTKDhxc=; b=owGbwMvMwCXmXMhTe71c8zDjabUkhjTfCf8+JLza08dw5uRSr4d7ch76Vp/tzc66NCmSt2r9/ Bn9y6PKO0pZGMS4GGTFFFlCBJT6NjReXHD9QdYfmDmsTCBDGLg4BWAintyMDPdvybLrqz1YsnOG Vo/fv4k3HKb/ddj2PMX7i5NI1455JxIYGdZYxW1wX2H3sa945UvhvvnBwcsc6pitdm1nmXbx+nb O3SwA X-Developer-Key: i=jiaxun.yang@flygoat.com; a=openpgp; fpr=980379BEFEBFBF477EA04EF9C111949073FC0F67 Currently kernel entry in head.S is in DMW address range, firmware is instructed to jump to this address after loading the image. However kernel should not make any assumption on firmware's DMW setting, thus the entry point should be a physical address falls into direct translation region. Fix by applying a calculation to the entry and amend entry calculation logic in libstub accordingly. Note that due to relocation restriction TO_PHYS can't be used in assembly, we can only do plus and minus here. Cc: stable@vger.kernel.org Signed-off-by: Jiaxun Yang --- v2: Fix efistub --- arch/loongarch/kernel/head.S | 2 +- drivers/firmware/efi/libstub/loongarch.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/loongarch/kernel/head.S b/arch/loongarch/kernel/head.S index c4f7de2e2805..1a83564023e1 100644 --- a/arch/loongarch/kernel/head.S +++ b/arch/loongarch/kernel/head.S @@ -22,7 +22,7 @@ _head: .word MZ_MAGIC /* "MZ", MS-DOS header */ .org 0x8 - .dword kernel_entry /* Kernel entry point */ + .dword PHYS_LINK_KADDR + (kernel_entry - _head) /* Kernel entry point */ .dword _kernel_asize /* Kernel image effective size */ .quad PHYS_LINK_KADDR /* Kernel image load offset from start of RAM */ .org 0x38 /* 0x20 ~ 0x37 reserved */ diff --git a/drivers/firmware/efi/libstub/loongarch.c b/drivers/firmware/ef= i/libstub/loongarch.c index 684c9354637c..60c145121393 100644 --- a/drivers/firmware/efi/libstub/loongarch.c +++ b/drivers/firmware/efi/libstub/loongarch.c @@ -41,7 +41,7 @@ static efi_status_t exit_boot_func(struct efi_boot_memmap= *map, void *priv) unsigned long __weak kernel_entry_address(unsigned long kernel_addr, efi_loaded_image_t *image) { - return *(unsigned long *)(kernel_addr + 8) - VMLINUX_LOAD_ADDRESS + kerne= l_addr; + return *(unsigned long *)(kernel_addr + 8) - TO_PHYS(VMLINUX_LOAD_ADDRESS= ) + kernel_addr; } =20 efi_status_t efi_boot_kernel(void *handle, efi_loaded_image_t *image, --=20 2.43.0 From nobody Wed Feb 11 11:32:11 2026 Received: from fout4-smtp.messagingengine.com (fout4-smtp.messagingengine.com [103.168.172.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2C27A79B9D; Wed, 22 May 2024 06:30:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.147 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359430; cv=none; b=tvfDmRplCvYkJExivAuPpyZT3vkxxKZ+BJ+QiAn4qYkWlLkEHrIk7kKh4kaHv5IthLyd6i9RiB3yckYhkyDNDtQzJEFTymliOT/gzHSSmThRGCJA4qnhSVZDgIfQJKvENqWD2rCaScNoV84wfSZYtvSPW+cyckIQ2FEHwNCXMhc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716359430; c=relaxed/simple; bh=7fdJBdzIPfqGGEwtcL8/d/uM5agRxxUtdOfdCs2glQQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=InDttVzW5k/bIC9yHvwSLzLDBb1d7xdMoBuoyrbtfCfcB1pDpBkXXSB72gkMulUXLDPfaFFO+fQ5HMieD77A7kndKoFUP+IPS6k9I4V48JZHylekWPh3ud9o8Ows7/6DQP77An+h8J1unEifaKcoX7M3qUPNZnI+UtUm+0UhVdQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com; spf=pass smtp.mailfrom=flygoat.com; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b=fVoUJwDY; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=TIs24USG; arc=none smtp.client-ip=103.168.172.147 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=flygoat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flygoat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=flygoat.com header.i=@flygoat.com header.b="fVoUJwDY"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="TIs24USG" Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailfout.nyi.internal (Postfix) with ESMTP id 50A011380136; Wed, 22 May 2024 02:30:28 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Wed, 22 May 2024 02:30:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=flygoat.com; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1716359428; x=1716445828; bh=eohBkNeC9goPP1VCyGzG57xJ91PgPdvWRQbAuvbCQlw=; b= fVoUJwDY2+YLcoVZNqYZjf7btGSTqv/aNWOouqg2i9AFQLMH4xSLFzHWmMMISEj+ hU99knFR80sxC+y3auR5oSb+Nw+DPkdHXNfI7p/APUUbvKDx8AiUU02Td65DG3E0 1CWUbYOCK5RM7mJPAnNT//jRgsgX/rO8bIb7i3NISDdBeGRSJWtnX3jAvW1KS1EM lkckQM0TWVR8VjY/1qYHiYjQmPyqL6VPJHZq1SnzGCz8Z4ncV8AF6jGnIM8DH6Ho ev2dZViV2iKl9ILTp4aFM8tQhrdRZMxbbxw6/KlylxuJjBd5eOR1YrDfT6CYquAA s3fkRnl+CSHB82XI4FMq8w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1716359428; x= 1716445828; bh=eohBkNeC9goPP1VCyGzG57xJ91PgPdvWRQbAuvbCQlw=; b=T Is24USGqMD5yV6/GD4pfOiVEoVjSYdv0aFK07EHJ8wssa7CWTz9GdjrWeueUp68b 8r21VKiePxdChBhCtekK9vizAC29QVu5GVqu0yG/xCcTj56hp4SI4E4+IPgayFYK PlsVb99kYylNotP/OtX6TE+ZZLxrCmEqE9izc4B1f3/6yqp9+PC1SZTuve0aWy4o OsQcQeiralXLjr9yiWVq3tHBxnkJqbfcwJpvtT0prHFmbTq9xxlNQp2Pmd+9SAPx mNiNTA/gJO5IKoS0cmUD7qVn1giP4KCrJfkjkFcVVoGtT59NPfvwuXaynkT5FYsU M5dLcjoyLm61geW047qEA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeifedgleekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephfffufggtgfgkfhfjgfvvefosehtjeertdertdejnecuhfhrohhmpeflihgr gihunhcujggrnhhguceojhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomheqne cuggftrfgrthhtvghrnhepvdekiefhfeevkeeuveetfeelffekgedugefhtdduudeghfeu veegffegudekjeelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepjhhirgiguhhnrdihrghnghesfhhlhihgohgrthdrtghomh X-ME-Proxy: Feedback-ID: ifd894703:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 22 May 2024 02:30:27 -0400 (EDT) From: Jiaxun Yang Date: Wed, 22 May 2024 07:30:23 +0100 Subject: [PATCH v2 4/4] LoongArch: Override higher address bits in JUMP_VIRT_ADDR Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20240522-loongarch-booting-fixes-v2-4-727edb96e548@flygoat.com> References: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> In-Reply-To: <20240522-loongarch-booting-fixes-v2-0-727edb96e548@flygoat.com> To: Huacai Chen , Binbin Zhou Cc: loongarch@lists.linux.dev, linux-kernel@vger.kernel.org, Jiaxun Yang , stable@vger.kernel.org X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1077; i=jiaxun.yang@flygoat.com; h=from:subject:message-id; bh=7fdJBdzIPfqGGEwtcL8/d/uM5agRxxUtdOfdCs2glQQ=; b=owGbwMvMwCXmXMhTe71c8zDjabUkhjTfCf82tCQskD17SqvD5e2E7Tb8NxzYQh44W7zPfsvGL SvSNWlPRykLgxgXg6yYIkuIgFLfhsaLC64/yPoDM4eVCWQIAxenAExESZ7hf7ma4e6t876fevqn siVk2nHWLUf5v7zfrHz6z/w7Bd/SuPwY/qnvYthjEhe3ZnnWux2psz7vWfT+3eFXa47zeuwObJb wU+ADAA== X-Developer-Key: i=jiaxun.yang@flygoat.com; a=openpgp; fpr=980379BEFEBFBF477EA04EF9C111949073FC0F67 In JUMP_VIRT_ADDR we are performing an or calculation on address value directly from pcaddi. This will only work if we are currently running from direct 1:1 mapping addresses or firmware's DMW is configured exactly same as kernel. Still, we should not rely on such assumption. Fix by overriding higher bits in address comes from pcaddi, so we can get rid of or operator. Cc: stable@vger.kernel.org Signed-off-by: Jiaxun Yang --- v2: Overriding address with bstrins --- arch/loongarch/include/asm/stackframe.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/loongarch/include/asm/stackframe.h b/arch/loongarch/inclu= de/asm/stackframe.h index 45b507a7b06f..51dec8b17d16 100644 --- a/arch/loongarch/include/asm/stackframe.h +++ b/arch/loongarch/include/asm/stackframe.h @@ -42,7 +42,7 @@ .macro JUMP_VIRT_ADDR temp1 temp2 li.d \temp1, CACHE_BASE pcaddi \temp2, 0 - or \temp1, \temp1, \temp2 + bstrins.d \temp1, \temp2, (DMW_PABITS - 1), 0 jirl zero, \temp1, 0xc .endm =20 --=20 2.43.0