From nobody Mon Feb 9 04:46:48 2026 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (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 2D4FD1F152B for ; Tue, 21 Jan 2025 11:55:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.158.5 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737460513; cv=none; b=qlTvMwJdIGth0D1/4uEFagXPtiT6NdBKd3ittKXCj4H71RT7aPPRwSWnknCXTBEy7ULHe+5WC6d+5x6VdNYXSYSikvcNTbsDEozJt88Su4RQI6zc29kKqIKnZDoIjXbUGPrKO7wxa6vkgsdBCK9FjsUbZUl8qwyBOTQ1pw51pbw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737460513; c=relaxed/simple; bh=GSnAlmdA+I5daEzOtrHu9b7NALHDuLYpgNOi7yfK+b0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=a2qv54fY9tCHmcDQiRtqwS67ZYL1ueOcl3lJhUywsofKriHaLnuPdwJgzMhpO1WCUTa0r1TeSurb/ODxOgFjldUGoVFOmXO5zwaHvweF/GfVNvuB+5odngj8IUJj9Mh41dj6TrUBXt2G1VjyZUx6wv2n49Km8YWAmtJDx/y0158= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=LhX1H6Vw; arc=none smtp.client-ip=148.163.158.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="LhX1H6Vw" Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 50L7XLpk010145; Tue, 21 Jan 2025 11:54:57 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=u+XP0qil85Jd0RWi0 SdlKQiqwId4V8KhgY5m8N1gbMI=; b=LhX1H6Vw5vM2pD3GygP2q6VVTFhjeXzXV WfeMtOJ3tMXwavWcXpDWlEX4cXig2OayWyylvU5xVGQ+FA2NBktPcM29KkqBfoRW 2Ep3fTsCk4KIVQOYYAqmJwRTGpgQweorREzBMPKdNijYxphRc6g1Yt31knrD/B+T qyt0DWmKydVRpynCeSIYM1WWwsV4+Zj7rsrk/vBRKwgIjpG4Jfi4lfohiPLc5iYc g/INfIB3DOKAhEuCKN87DVoqD6aTDHSd1QfbsN/eEovHnSvephZWbbv9SBCa7oPw 7v+aFYLYAJDaJrQIUoQMy8pF/d2vyZT0WAKf05BHx8GC6k93IcUvA== Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 44a79n16u0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 21 Jan 2025 11:54:57 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 50LANerq022449; Tue, 21 Jan 2025 11:54:56 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 448r4k2v2x-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 21 Jan 2025 11:54:56 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 50LBsrPo54133046 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jan 2025 11:54:53 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 040ED20040; Tue, 21 Jan 2025 11:54:53 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3B83820043; Tue, 21 Jan 2025 11:54:50 +0000 (GMT) Received: from li-4f5ba44c-27d4-11b2-a85c-a08f5b49eada.ibm.com.com (unknown [9.43.54.128]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 21 Jan 2025 11:54:49 +0000 (GMT) From: Sourabh Jain To: linuxppc-dev@lists.ozlabs.org Cc: Sourabh Jain , Andrew Morton , Hari Bathini , Madhavan Srinivasan , Mahesh Salgaonkar , Michael Ellerman , kexec@lists.infradead.org, linux-kernel@vger.kernel.org, Baoquan He Subject: [PATCH v2 1/6] kexec: Initialize ELF lowest address to ULONG_MAX Date: Tue, 21 Jan 2025 17:24:37 +0530 Message-ID: <20250121115442.1278458-2-sourabhjain@linux.ibm.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250121115442.1278458-1-sourabhjain@linux.ibm.com> References: <20250121115442.1278458-1-sourabhjain@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 1oTdqcff110YdRJp_Nig7k38EEwwBPtm X-Proofpoint-ORIG-GUID: 1oTdqcff110YdRJp_Nig7k38EEwwBPtm X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-01-21_05,2025-01-21_02,2024-11-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 mlxscore=0 lowpriorityscore=0 phishscore=0 malwarescore=0 bulkscore=0 suspectscore=0 priorityscore=1501 spamscore=0 mlxlogscore=999 adultscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2411120000 definitions=main-2501210095 Content-Type: text/plain; charset="utf-8" kexec_elf_load() loads an ELF executable and sets the address of the lowest PT_LOAD section to the address held by the lowest_load_addr function argument. To determine the lowest PT_LOAD address, a local variable lowest_addr (type unsigned long) is initialized to UINT_MAX. After loading each PT_LOAD, its address is compared to lowest_addr. If a loaded PT_LOAD address is lower, lowest_addr is updated. However, setting lowest_addr to UINT_MAX won't work when the kernel image is loaded above 4G, as the returned lowest PT_LOAD address would be invalid. This is resolved by initializing lowest_addr to ULONG_MAX instead. This issue was discovered while implementing crashkernel high/low reservation on the PowerPC architecture. Fixes: a0458284f062 ("powerpc: Add support code for kexec_file_load()") Cc: Andrew Morton Cc: Hari Bathini Cc: Madhavan Srinivasan Cc: Mahesh Salgaonkar Cc: Michael Ellerman Cc: kexec@lists.infradead.org Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-kernel@vger.kernel.org Acked-by: Baoquan He Signed-off-by: Sourabh Jain Acked-by: Hari Bathini --- kernel/kexec_elf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/kexec_elf.c b/kernel/kexec_elf.c index d3689632e8b9..3a5c25b2adc9 100644 --- a/kernel/kexec_elf.c +++ b/kernel/kexec_elf.c @@ -390,7 +390,7 @@ int kexec_elf_load(struct kimage *image, struct elfhdr = *ehdr, struct kexec_buf *kbuf, unsigned long *lowest_load_addr) { - unsigned long lowest_addr =3D UINT_MAX; + unsigned long lowest_addr =3D ULONG_MAX; int ret; size_t i; =20 --=20 2.47.1