From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from PH7PR06CU001.outbound.protection.outlook.com (mail-westus3azon11010065.outbound.protection.outlook.com [52.101.201.65]) (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 8E70D265623 for ; Sun, 24 May 2026 07:01:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.201.65 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779606078; cv=fail; b=dOyXP2YIT4hfcDhgV4uzc1KSoAJgYgWk6TNYcQQ+oteAzqwtXHhYCkoCbQR6iQjpsaEJPGKiitj9uVnJlhWMjO6ITPG4z1jCqiCo47tHTpCinyJl1+2B1v51UXeooYXhjHJ2ZZCfMvvxg8bSTsa42I+qkBlPlH3AOWcn3bwXJh8= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779606078; c=relaxed/simple; bh=wfhZzhAohi/FtyYYXdrLdf7GcBFZgcIiRDtWPbtirGQ=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=f4USnyc6nzq4aWkuoja4l1LFJxkq+yo0Rn3kPrnPJoYhOQGqo/ZBr/wWvAjMqloQ6qlvAmzwsBqi88/UwwBUklD5t+wmq6otmwAAsnCyBo+ikQeTsLlF0njukQYk9wM+kWMHghFR2wQyTpXcydGYXxBuJUsojO3+EiZGQ22zsCY= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=NQy4upAv; arc=fail smtp.client-ip=52.101.201.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="NQy4upAv" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CDE/jxuZIqHCMcussV5bpJu9BE27rp2D2UmcY8eEi5otUiiF2nE05hdR8lczLNgk2gvwH15S+DyGdIs3hMxkEE1YQEaHbfH/yYOLwrpUgK1VkfbF2QsxH55/9GxinD9JSn63aQIWXF2E5xPhc7goPVca+f4OleOFHRlSD5JlvN3njbZBwAdT2+CZMj1r0X7r2JRU2jVAOPlwSf8amMuWQr/1ke/xEAEEDmaQHnbrVvfkB9skINmw6cqJzdb/9Svf8x6B3m8+2GV5UZX5M8Qimf18LHwR1whb4HF2JCJB2ya33yn9IdyD3TDW9JEexhnBljcMcGxf3G6xnHPp84Dn3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=9P/uo9GZaxT585xZaLbthHog6b4XVUh1qAOqea72FDo=; b=KBq7/DGEpLYEEWhtqOMMUrXDBnFj8nYwxlhxyPmu0JslgdbBNoC48n6BRtbBoBRKKJE3vv4WowmvtIaj45/VNaR9tgwJRAOaJ79of4tmPf6HNkUAqWqpvtzeNVYfV/+WBFp8d/QYs6COZc9QokL3RebpuM3TU5OWhPu5LKNeoTSRevStwr6Tzvw9MfSbzIb5GJIga8pbNVRx5InQASytM3Bs6aRTuFpE56bAlF0ThMUxwJHoRWZwav2/pgo4i6RvUJBSuyh7wWLRFNVD04YzTOGq8AyUQmDbc7hLZMoL6S6RZAWysKBxJ1Ud21m3Pi2SSFWz666paPdaTzXAejfngw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9P/uo9GZaxT585xZaLbthHog6b4XVUh1qAOqea72FDo=; b=NQy4upAvBsHwanegScU9g5JJrpBhe3KZDjNG6qZ8ZVcvMCJFseLCE7jNIHMgO6Z4cKz4XhBn6d6Fcw6C0lpQ3cutIIHuwrfh8c+YuLWRwP+3Li1frxIm8OsFzrL57UUZKaXAiFDCx7McnXQItuDEbnqnwK1SRvRUfc+Lzw9vVn+r6VRTuiIR2qOzXcvNBr2zQ2ZSaTOCTp4pxt23vg32DEm+LxwB5MSFP76POQ/gJ9PLbQ1sWFMhIG7/GDMrCBXPR5ltJz8lQ2ryBtECKQLJkY+9tvZdf3YkboRnn0cFQ96lebU6md8c/78cgTOO74VTU6LXLPHRtoW0CQESR3GdbA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from CH3PR12MB7548.namprd12.prod.outlook.com (2603:10b6:610:144::12) by PH7PR12MB6564.namprd12.prod.outlook.com (2603:10b6:510:210::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.48.19; Sun, 24 May 2026 07:01:10 +0000 Received: from CH3PR12MB7548.namprd12.prod.outlook.com ([fe80::b710:d6a1:ab16:76de]) by CH3PR12MB7548.namprd12.prod.outlook.com ([fe80::b710:d6a1:ab16:76de%6]) with mapi id 15.21.0048.016; Sun, 24 May 2026 07:01:10 +0000 Message-ID: Date: Sun, 24 May 2026 10:01:01 +0300 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] x86: Use correct CHECKFLAGS for realmode code To: =?UTF-8?Q?Thomas_Wei=C3=9Fschuh?= , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Arnd Bergmann Cc: linux-kernel@vger.kernel.org References: <20260522-x86-sparse-boot-v1-1-b94c228d9008@linutronix.de> Content-Language: en-US From: Mark Bloch In-Reply-To: <20260522-x86-sparse-boot-v1-1-b94c228d9008@linutronix.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0207.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::12) To CH3PR12MB7548.namprd12.prod.outlook.com (2603:10b6:610:144::12) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR12MB7548:EE_|PH7PR12MB6564:EE_ X-MS-Office365-Filtering-Correlation-Id: 9fb10ad9-7e6d-4d94-22db-08deb9623bfd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016|22082099003|56012099003|18002099003|6133799003|11063799006; X-Microsoft-Antispam-Message-Info: yLDb+v7ytKxIK+7uPDq+kbYzyX8D0Kvnt6OEsHdTwGf7DRLdvPf07Z/dtxz54hwIGOp5AG+c8+sNmR8xsBj6UzNbqgoxH4sykTWtRAWze5rz91lL0aPsfNQxZx7P2QuqGc/B30iDHw8iFRCqx/sFnTUVnBvT/x9nyLP9rY+7I4iAo6srhIHBTD7kOkZd93112qlDefWIFgEkrIS1kTlvqdgM94ObYIQxJLB2YRzNTQrhl/yYWl6TBIO5Otg686rStCc9LKi/vfeE0raqTCzlex5UutVhUsMir6tLstpA4r8rQB5ZcWomIgPgF5Sg3n8+UyycTCpA8G15uUwgOoFWph+gcHENtbPWhBIOT8tUw6b/IER/zgVo+MKFxDVrtBl2e30dPW1S5HZQWJ9m8GncdhtGjthTUJftzf5q10Vr1/mP4ap10vwL6Cp3mKXNnAgVtcX7pcxTdKm4ZBkM22//KhMZQsGKZA74RvQZ/iSGEE6VoydXu4JJKLKH9adEEYnkgBag6aUeAEKNUPGBqQ1bXIlhApiCPvx7A1VrkeKUioGuVBun8GMdLnNxF9Hj63cYm5OL8OhgQnHQHOyJ3tzzXeWxdtfevt1W8eK8V0LlMm/xQRN1Khn8QS/takkd73yjtLOCYtnFZcL41H3DKQa0FoITP11BaKI5DMP2Y6bWkIQDBqbx5UmWjUrcYjPtepKR X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR12MB7548.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(22082099003)(56012099003)(18002099003)(6133799003)(11063799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WmMzeDJhMm5jc2Z6RmM3b0U3VlhqclJyZFR4VDRFRTNRMEpZN2o2YmhxSTF2?= =?utf-8?B?UVEzaC84WW9samlPZk9pK0FwZTR2a3BUaHpUME9HMmo5NzhKUVdTOGQ4MHN5?= =?utf-8?B?cEhQTGRyUlNaa0lCU3hzcDNvak0rYjNxUk9ab0hLWGpGN0xuNlBUODc3Uzl4?= =?utf-8?B?TTdmVzBRVVlHWDlYdDBLTDl6MTllTmNlTkRGb3ZhWFZvbmlZTGF5T3M5ZnlZ?= =?utf-8?B?MnptUko4YWcvTHpxQkZJR2l6ZXNaNHlOblppTkpBZGJvSlNwem9CY0FTbGFS?= =?utf-8?B?Z0JCdi9DeEQ3YlVjM3hrMm9VWW5WZFhDUmJLQTVST3ZvVkxJenBHdHZzdUJP?= =?utf-8?B?K2xocEFuMjJ1b2d4aEY0YjYzaHFLbTdoSjVPQk9Oc2VPNE41YXpwV3ZWeWJC?= =?utf-8?B?eFJHNmxIN21hT3V3NGRSbFYxRktmVUhOWEgxWjNDL2w3YVFveGJrbDlMWXJM?= =?utf-8?B?U282ZUpLMFByMFpiTWlrZGtyQU5Tc0V5NDM4ODhNZTFESUdkelpLV0lZQ1g1?= =?utf-8?B?SEM0b2o4c3ZrSHFEY0Q5cXR3Y244VldJWW9wdDRjUytqaTNqeWV4ZjF1YUNZ?= =?utf-8?B?dHh4MVZwdDBKQU5sVXN0QkFBcG84MjZnMVg2WmhqZUYxcG10OHFVRnhEc000?= =?utf-8?B?ck55NGpBUXVJOVlmRFRBWGRZaGR3VGxFVEgrRG5ONXFKVE1oNk41QnpmTGNo?= =?utf-8?B?LzZLYmNCOW1DS01raEphRFc4clMvMTlkVTdIcXNZV1kraVZrR2ZlMlhwL2dW?= =?utf-8?B?SEZlOWpPbzlWRTRTb1RPc1FhTUNuUFdoVy81cm80WkJGY0lvYTVoc3pnU1lO?= =?utf-8?B?dFRjVmRna2J3SkdKL0FXckdCbmpPWWR1VFp0M3NnQnhONGFXVnhtbjNxeEFP?= =?utf-8?B?MWVCOEtmZlRyVVpDTzJUZko3MG9MN1Q5L1ppcnd4anVEUG5DdTNhWWRpUlk4?= =?utf-8?B?UGVQdFhBOHhReEhnM05xZXFXNCt1SjVPaWl5VFlXY0QrTEdmR2R1NjRVRERp?= =?utf-8?B?cHI3SWFUYTBXVXpML2VxSDBTN2NKSkh4TzNSL2E1SlNldkwxL1BLQU01NGxZ?= =?utf-8?B?T0tneHRUelJyV21zRExTNVM0cFc5KzJHN3o4U3BDVUhnT05HRFpDMHBRdG55?= =?utf-8?B?NFY1b0hlNGY3QlRxQzZweUNQZmF0OGpVd2xrNTloa1NCVkZJbXN2WjA3RlJN?= =?utf-8?B?eVc1MVR1eTBRSzFBYVJGM2ZGSnNWSWwwMW02NE9aaE8vbmFIUEcwTEhCZHVO?= =?utf-8?B?c0E3Yk8rdGJ2VFFpWHFrbkdGNDRwYi9mUWFhVGtDMUlEeTVuKy9SbHZXTW5T?= =?utf-8?B?bFoyZHdiSFhyRUZkR1Bkc0dSbUZiRzlTVE44Nmw1NWJkek42TWFNdWF4TWpP?= =?utf-8?B?RG5xQ1JwLzBzYXE4QXZiY2Z3b3F2SkVhMlNlSFVkTHZLMUpYRXM0b2lFb3ZV?= =?utf-8?B?Z0orbm1pemVjeitMTmExajgzRHFIYUROSEJFeEswenFBVTJpYzNMdm12d0Fy?= =?utf-8?B?T2Q2MkNTQXE5VkNWTWlYRVBVUGRoSmhrOWtmWEVPZGoxMUpEWkZKV1VLZUpq?= =?utf-8?B?NENCTlRLa0pQUjZ6V2tMN3piQSt3V1NjNkx1Mno4ZysrVHFyQzNKL050dUN3?= =?utf-8?B?d3J6L1lJMnA5TFk0Vm4xK0swMStETnNQK0h0a2JtaXZmNzZlb0J3MXFYRWk1?= =?utf-8?B?SUFONUIxSHdDRWRZTlB6NTA4VTZ3TlhqcXlRTVVEWlMvZVBuWTd5TzV0Vlo4?= =?utf-8?B?ekZBajhDTG9DTHc4aGZhSVNMejFmOHA2elZrZkxTejRqK21qczVOYmlrQzlH?= =?utf-8?B?RE1oRW5pOThmVDVoRjFROENyUFVjaDRJbHVxWjRud2lMRFpZcHJCckZ5QnhS?= =?utf-8?B?QkVMNTJvUTF1d1RiRC9MWUFzUlYxZFdOa005bHJ4V3QvckU5ZE5EUWtJTGxa?= =?utf-8?B?TXVTSnVhUVZ4enhyT3ZmMHlrUEoyd0lreEpoZ3J1eHZ1VEJ5b0F4R1NzM3RV?= =?utf-8?B?a2dYY2M2bHlKTnVBcEt5L25UZWdBSFY1L1Q4VVZIMkJjNEw1TlNZNnlRMmY5?= =?utf-8?B?NG5pN0tvMnFubEVXYlJ4dG8zYVMrdXVaU21nRVJLdyt6Y3lSalpDbjRrR21s?= =?utf-8?B?Y0dBbUdtQnVJdjFzeVQvUkJjdWNvdUt1ejRuaWVvdXAxU09hSWpzOXZPRHJ5?= =?utf-8?B?cEp4bmN4S2wvQ2xwazdvbXlNLzgzL1V6U3Bxc2MxUDFLSUlVWitlbkZtVDhE?= =?utf-8?B?Yjd4Z0FJWDZFZnJMMXdkQkN3cG5yR21xWE9KSW92Q1dCb3ZUUTVtWEFCMzFK?= =?utf-8?B?MWsyWk1lM2VwOGU4eFNWbGRGeEh2RDFTQzdtTkx6dUwzQ1puU29HQT09?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9fb10ad9-7e6d-4d94-22db-08deb9623bfd X-MS-Exchange-CrossTenant-AuthSource: CH3PR12MB7548.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 May 2026 07:01:10.0306 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Molm/dWQx5pQGQP5wc7KN2XdADkvc27upJVpfp+awN+I2Wo7cDms7RVrnOYDyAMY/9n29K67HRruan/+VwJRkg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6564 On 22/05/2026 10:03, Thomas Weißschuh wrote: > Currently the CHECKFLAGS from the normal build are also used for the > realmode code. This leads to inconsistent flags confusing sparse and > the logic in the kernel headers. Since recently this inconsistent state > is detected by asm-generic/bitsperlong.h, triggering a warning. > > Fix the CHECKFLAGS to let sparse properly check this code and > also avoid the warning. > > Technically the replacement of -D__x86_64__ is not necessary, as it will > only be added to CHECKFLAGS later in the file. > Replace it anyways for consistency. > > Reported-by: Mark Bloch > Closes: https://lore.kernel.org/lkml/3bbcf456-322c-46f9-b238-88fb8ad227b2@nvidia.com/ > Fixes: 62357a5888ea ("asm-generic/bitsperlong.h: Add sanity checks for __BITS_PER_LONG") > Signed-off-by: Thomas Weißschuh > --- > arch/x86/Makefile | 5 +++++ > arch/x86/boot/Makefile | 1 + > arch/x86/realmode/rm/Makefile | 1 + > 3 files changed, 7 insertions(+) > > diff --git a/arch/x86/Makefile b/arch/x86/Makefile > index 46fec0b08487..bdafa3635dd1 100644 > --- a/arch/x86/Makefile > +++ b/arch/x86/Makefile > @@ -61,6 +61,11 @@ REALMODE_CFLAGS += $(cc_stack_align4) > REALMODE_CFLAGS += $(CLANG_FLAGS) > export REALMODE_CFLAGS > > +REALMODE_CHECKFLAGS := $(subst -m64, -m16, \ > + $(subst -m32, -m16, \ > + $(subst -D__x86_64__, -D__i386__, \ > + $(CHECKFLAGS)))) > + > # BITS is used as extension for files which are available in a 32 bit > # and a 64 bit version to simplify shared Makefiles. > # e.g.: obj-y += foo_$(BITS).o > diff --git a/arch/x86/boot/Makefile b/arch/x86/boot/Makefile > index 3f9fb3698d66..20b569930229 100644 > --- a/arch/x86/boot/Makefile > +++ b/arch/x86/boot/Makefile > @@ -55,6 +55,7 @@ KBUILD_CFLAGS := $(REALMODE_CFLAGS) -D_SETUP > KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMBLY__ > KBUILD_CFLAGS += -fno-asynchronous-unwind-tables > KBUILD_CFLAGS += $(CONFIG_CC_IMPLICIT_FALLTHROUGH) > +CHECKFLAGS := $(REALMODE_CHECKFLAGS) > > $(obj)/bzImage: asflags-y := $(SVGA_MODE) > > diff --git a/arch/x86/realmode/rm/Makefile b/arch/x86/realmode/rm/Makefile > index a0fb39abc5c8..725c5ef6cdf1 100644 > --- a/arch/x86/realmode/rm/Makefile > +++ b/arch/x86/realmode/rm/Makefile > @@ -67,3 +67,4 @@ KBUILD_CFLAGS := $(REALMODE_CFLAGS) -D_SETUP -D_WAKEUP \ > -I$(srctree)/arch/x86/boot > KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMBLY__ > KBUILD_CFLAGS += -fno-asynchronous-unwind-tables > +CHECKFLAGS := $(REALMODE_CHECKFLAGS) > > --- > base-commit: 254f49634ee16a731174d2ae34bc50bd5f45e731 > change-id: 20260521-x86-sparse-boot-cb427318607d > > Best regards, > -- > Thomas Weißschuh > Tested-by: Mark Bloch