From: kernel test robot <lkp@intel.com>
To: Ross Philipson <ross.philipson@oracle.com>,
linux-kernel@vger.kernel.org, x86@kernel.org,
linux-integrity@vger.kernel.org, linux-doc@vger.kernel.org,
linux-crypto@vger.kernel.org, iommu@lists.linux-foundation.org,
kexec@lists.infradead.org, linux-efi@vger.kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
ross.philipson@oracle.com, dpsmith@apertussolutions.com,
tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
hpa@zytor.com, ardb@kernel.org, mjg59@srcf.ucam.org,
James.Bottomley@hansenpartnership.com, luto@amacapital.net,
nivedita@alum.mit.edu, kanth.ghatraju@oracle.com,
trenchboot-devel@googlegroups.com
Subject: Re: [PATCH v7 09/13] x86: Secure Launch SMP bringup support
Date: Sat, 11 Nov 2023 18:41:06 +0800 [thread overview]
Message-ID: <202311111806.sbmcWUN1-lkp@intel.com> (raw)
In-Reply-To: <20231110222751.219836-10-ross.philipson@oracle.com>
Hi Ross,
kernel test robot noticed the following build warnings:
[auto build test WARNING on tip/x86/core]
[also build test WARNING on herbert-cryptodev-2.6/master herbert-crypto-2.6/master linus/master v6.6 next-20231110]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Ross-Philipson/x86-boot-Place-kernel_info-at-a-fixed-offset/20231111-063453
base: tip/x86/core
patch link: https://lore.kernel.org/r/20231110222751.219836-10-ross.philipson%40oracle.com
patch subject: [PATCH v7 09/13] x86: Secure Launch SMP bringup support
config: x86_64-rhel-8.3-rust (https://download.01.org/0day-ci/archive/20231111/202311111806.sbmcWUN1-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231111/202311111806.sbmcWUN1-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311111806.sbmcWUN1-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> arch/x86/kernel/smpboot.c:1097:6: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (slaunch_is_txt_launch())
^~~~~~~~~~~~~~~~~~~~~~~
arch/x86/kernel/smpboot.c:1107:6: note: uninitialized use occurs here
if (ret)
^~~
arch/x86/kernel/smpboot.c:1097:2: note: remove the 'if' if its condition is always false
if (slaunch_is_txt_launch())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/kernel/smpboot.c:1046:9: note: initialize the variable 'ret' to silence this warning
int ret;
^
= 0
1 warning generated.
vim +1097 arch/x86/kernel/smpboot.c
1036
1037 /*
1038 * NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad
1039 * (ie clustered apic addressing mode), this is a LOGICAL apic ID.
1040 * Returns zero if startup was successfully sent, else error code from
1041 * ->wakeup_secondary_cpu.
1042 */
1043 static int do_boot_cpu(u32 apicid, int cpu, struct task_struct *idle)
1044 {
1045 unsigned long start_ip = real_mode_header->trampoline_start;
1046 int ret;
1047
1048 #ifdef CONFIG_X86_64
1049 /* If 64-bit wakeup method exists, use the 64-bit mode trampoline IP */
1050 if (apic->wakeup_secondary_cpu_64)
1051 start_ip = real_mode_header->trampoline_start64;
1052 #endif
1053 idle->thread.sp = (unsigned long)task_pt_regs(idle);
1054 initial_code = (unsigned long)start_secondary;
1055
1056 if (IS_ENABLED(CONFIG_X86_32)) {
1057 early_gdt_descr.address = (unsigned long)get_cpu_gdt_rw(cpu);
1058 initial_stack = idle->thread.sp;
1059 } else if (!(smpboot_control & STARTUP_PARALLEL_MASK)) {
1060 smpboot_control = cpu;
1061 }
1062
1063 /* Enable the espfix hack for this CPU */
1064 init_espfix_ap(cpu);
1065
1066 /* So we see what's up */
1067 announce_cpu(cpu, apicid);
1068
1069 /*
1070 * This grunge runs the startup process for
1071 * the targeted processor.
1072 */
1073 if (x86_platform.legacy.warm_reset) {
1074
1075 pr_debug("Setting warm reset code and vector.\n");
1076
1077 smpboot_setup_warm_reset_vector(start_ip);
1078 /*
1079 * Be paranoid about clearing APIC errors.
1080 */
1081 if (APIC_INTEGRATED(boot_cpu_apic_version)) {
1082 apic_write(APIC_ESR, 0);
1083 apic_read(APIC_ESR);
1084 }
1085 }
1086
1087 smp_mb();
1088
1089 /*
1090 * Wake up a CPU in difference cases:
1091 * - Intel TXT DRTM launch uses its own method to wake the APs
1092 * - Use a method from the APIC driver if one defined, with wakeup
1093 * straight to 64-bit mode preferred over wakeup to RM.
1094 * Otherwise,
1095 * - Use an INIT boot APIC message
1096 */
> 1097 if (slaunch_is_txt_launch())
1098 slaunch_wakeup_cpu_from_txt(cpu, apicid);
1099 else if (apic->wakeup_secondary_cpu_64)
1100 ret = apic->wakeup_secondary_cpu_64(apicid, start_ip);
1101 else if (apic->wakeup_secondary_cpu)
1102 ret = apic->wakeup_secondary_cpu(apicid, start_ip);
1103 else
1104 ret = wakeup_secondary_cpu_via_init(apicid, start_ip);
1105
1106 /* If the wakeup mechanism failed, cleanup the warm reset vector */
1107 if (ret)
1108 arch_cpuhp_cleanup_kick_cpu(cpu);
1109 return ret;
1110 }
1111
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Ross Philipson <ross.philipson@oracle.com>,
linux-kernel@vger.kernel.org, x86@kernel.org,
linux-integrity@vger.kernel.org, linux-doc@vger.kernel.org,
linux-crypto@vger.kernel.org, iommu@lists.linux-foundation.org,
kexec@lists.infradead.org, linux-efi@vger.kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
ross.philipson@oracle.com, dpsmith@apertussolutions.com,
tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
hpa@zytor.com, ardb@kernel.org, mjg59@srcf.ucam.org,
James.Bottomley@hansenpartnership.com, luto@amacapital.net,
nivedita@alum.mit.edu, kanth.ghatraju@oracle.com,
trenchboot-devel@googlegroups.com
Subject: Re: [PATCH v7 09/13] x86: Secure Launch SMP bringup support
Date: Sat, 11 Nov 2023 18:41:06 +0800 [thread overview]
Message-ID: <202311111806.sbmcWUN1-lkp@intel.com> (raw)
In-Reply-To: <20231110222751.219836-10-ross.philipson@oracle.com>
Hi Ross,
kernel test robot noticed the following build warnings:
[auto build test WARNING on tip/x86/core]
[also build test WARNING on herbert-cryptodev-2.6/master herbert-crypto-2.6/master linus/master v6.6 next-20231110]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Ross-Philipson/x86-boot-Place-kernel_info-at-a-fixed-offset/20231111-063453
base: tip/x86/core
patch link: https://lore.kernel.org/r/20231110222751.219836-10-ross.philipson%40oracle.com
patch subject: [PATCH v7 09/13] x86: Secure Launch SMP bringup support
config: x86_64-rhel-8.3-rust (https://download.01.org/0day-ci/archive/20231111/202311111806.sbmcWUN1-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231111/202311111806.sbmcWUN1-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311111806.sbmcWUN1-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> arch/x86/kernel/smpboot.c:1097:6: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (slaunch_is_txt_launch())
^~~~~~~~~~~~~~~~~~~~~~~
arch/x86/kernel/smpboot.c:1107:6: note: uninitialized use occurs here
if (ret)
^~~
arch/x86/kernel/smpboot.c:1097:2: note: remove the 'if' if its condition is always false
if (slaunch_is_txt_launch())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/kernel/smpboot.c:1046:9: note: initialize the variable 'ret' to silence this warning
int ret;
^
= 0
1 warning generated.
vim +1097 arch/x86/kernel/smpboot.c
1036
1037 /*
1038 * NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad
1039 * (ie clustered apic addressing mode), this is a LOGICAL apic ID.
1040 * Returns zero if startup was successfully sent, else error code from
1041 * ->wakeup_secondary_cpu.
1042 */
1043 static int do_boot_cpu(u32 apicid, int cpu, struct task_struct *idle)
1044 {
1045 unsigned long start_ip = real_mode_header->trampoline_start;
1046 int ret;
1047
1048 #ifdef CONFIG_X86_64
1049 /* If 64-bit wakeup method exists, use the 64-bit mode trampoline IP */
1050 if (apic->wakeup_secondary_cpu_64)
1051 start_ip = real_mode_header->trampoline_start64;
1052 #endif
1053 idle->thread.sp = (unsigned long)task_pt_regs(idle);
1054 initial_code = (unsigned long)start_secondary;
1055
1056 if (IS_ENABLED(CONFIG_X86_32)) {
1057 early_gdt_descr.address = (unsigned long)get_cpu_gdt_rw(cpu);
1058 initial_stack = idle->thread.sp;
1059 } else if (!(smpboot_control & STARTUP_PARALLEL_MASK)) {
1060 smpboot_control = cpu;
1061 }
1062
1063 /* Enable the espfix hack for this CPU */
1064 init_espfix_ap(cpu);
1065
1066 /* So we see what's up */
1067 announce_cpu(cpu, apicid);
1068
1069 /*
1070 * This grunge runs the startup process for
1071 * the targeted processor.
1072 */
1073 if (x86_platform.legacy.warm_reset) {
1074
1075 pr_debug("Setting warm reset code and vector.\n");
1076
1077 smpboot_setup_warm_reset_vector(start_ip);
1078 /*
1079 * Be paranoid about clearing APIC errors.
1080 */
1081 if (APIC_INTEGRATED(boot_cpu_apic_version)) {
1082 apic_write(APIC_ESR, 0);
1083 apic_read(APIC_ESR);
1084 }
1085 }
1086
1087 smp_mb();
1088
1089 /*
1090 * Wake up a CPU in difference cases:
1091 * - Intel TXT DRTM launch uses its own method to wake the APs
1092 * - Use a method from the APIC driver if one defined, with wakeup
1093 * straight to 64-bit mode preferred over wakeup to RM.
1094 * Otherwise,
1095 * - Use an INIT boot APIC message
1096 */
> 1097 if (slaunch_is_txt_launch())
1098 slaunch_wakeup_cpu_from_txt(cpu, apicid);
1099 else if (apic->wakeup_secondary_cpu_64)
1100 ret = apic->wakeup_secondary_cpu_64(apicid, start_ip);
1101 else if (apic->wakeup_secondary_cpu)
1102 ret = apic->wakeup_secondary_cpu(apicid, start_ip);
1103 else
1104 ret = wakeup_secondary_cpu_via_init(apicid, start_ip);
1105
1106 /* If the wakeup mechanism failed, cleanup the warm reset vector */
1107 if (ret)
1108 arch_cpuhp_cleanup_kick_cpu(cpu);
1109 return ret;
1110 }
1111
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2023-11-11 10:41 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-10 22:27 [PATCH v7 00/13] x86: Trenchboot secure dynamic launch Linux kernel support Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 01/13] x86/boot: Place kernel_info at a fixed offset Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 02/13] Documentation/x86: Secure Launch kernel documentation Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-12 18:07 ` Alyssa Ross
2023-11-12 18:07 ` Alyssa Ross
2023-11-16 17:55 ` ross.philipson
2023-11-16 17:55 ` ross.philipson
2024-01-31 19:40 ` Daniel P. Smith
2024-01-31 19:40 ` Daniel P. Smith
2023-11-10 22:27 ` [PATCH v7 03/13] x86: Secure Launch Kconfig Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 04/13] x86: Secure Launch Resource Table header file Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 05/13] x86: Secure Launch main " Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 06/13] x86: Add early SHA support for Secure Launch early measurements Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-11 17:44 ` Eric Biggers
2023-11-11 17:44 ` Eric Biggers
2023-11-11 18:19 ` Andrew Cooper
2023-11-11 18:19 ` Andrew Cooper
2023-11-11 20:36 ` James Bottomley
2023-11-11 20:36 ` James Bottomley
2023-11-13 23:21 ` Andrew Cooper
2023-11-13 23:21 ` Andrew Cooper
2023-11-10 22:27 ` [PATCH v7 07/13] x86: Secure Launch kernel early boot stub Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 08/13] x86: Secure Launch kernel late " Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 09/13] x86: Secure Launch SMP bringup support Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-11 10:41 ` kernel test robot [this message]
2023-11-11 10:41 ` kernel test robot
2023-11-10 22:27 ` [PATCH v7 10/13] kexec: Secure Launch kexec SEXIT support Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 23:41 ` Sean Christopherson
2023-11-10 23:41 ` Sean Christopherson
2023-11-16 0:50 ` ross.philipson
2023-11-16 0:50 ` ross.philipson
2023-11-10 22:27 ` [PATCH v7 11/13] reboot: Secure Launch SEXIT support on reboot paths Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 12/13] x86: Secure Launch late initcall platform module Ross Philipson
2023-11-10 22:27 ` Ross Philipson
2023-11-10 22:27 ` [PATCH v7 13/13] tpm: Allow locality 2 to be set when initializing the TPM for Secure Launch Ross Philipson
2023-11-10 22:27 ` Ross Philipson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202311111806.sbmcWUN1-lkp@intel.com \
--to=lkp@intel.com \
--cc=James.Bottomley@hansenpartnership.com \
--cc=ardb@kernel.org \
--cc=bp@alien8.de \
--cc=dpsmith@apertussolutions.com \
--cc=hpa@zytor.com \
--cc=iommu@lists.linux-foundation.org \
--cc=kanth.ghatraju@oracle.com \
--cc=kexec@lists.infradead.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-integrity@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=luto@amacapital.net \
--cc=mingo@redhat.com \
--cc=mjg59@srcf.ucam.org \
--cc=nivedita@alum.mit.edu \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=ross.philipson@oracle.com \
--cc=tglx@linutronix.de \
--cc=trenchboot-devel@googlegroups.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.