Hi Ross, kernel test robot noticed the following build errors: [auto build test ERROR on char-misc/char-misc-testing] [also build test ERROR on char-misc/char-misc-next char-misc/char-misc-linus herbert-cryptodev-2.6/master herbert-crypto-2.6/master linus/master v6.8-rc4 next-20240216] [cannot apply to tip/x86/core] [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/20240215-064712 base: char-misc/char-misc-testing patch link: https://lore.kernel.org/r/20240214221847.2066632-16-ross.philipson%40oracle.com patch subject: [PATCH v8 15/15] x86: EFI stub DRTM launch support for Secure Launch config: i386-allmodconfig (https://download.01.org/0day-ci/archive/20240218/202402180324.a3PqEegg-lkp@xxxxxxxxx/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240218/202402180324.a3PqEegg-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202402180324.a3PqEegg-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In function 'efi_secure_launch', inlined from 'efi_stub_entry' at drivers/firmware/efi/libstub/x86-stub.c:990:2: >> drivers/firmware/efi/libstub/x86-stub.c:861:9: error: inconsistent operand constraints in an 'asm' 861 | asm volatile ("jmp *%%rax" | ^~~ vim +/asm +861 drivers/firmware/efi/libstub/x86-stub.c 813 814 static void efi_secure_launch(struct boot_params *boot_params) 815 { 816 struct slr_entry_uefi_config *uefi_config; 817 struct slr_uefi_cfg_entry *uefi_entry; 818 struct slr_entry_dl_info *dlinfo; 819 efi_guid_t guid = SLR_TABLE_GUID; 820 struct slr_table *slrt; 821 u64 memmap_hi; 822 void *table; 823 u8 buf[64] = {0}; 824 825 table = get_efi_config_table(guid); 826 827 /* 828 * The presence of this table indicated a Secure Launch 829 * is being requested. 830 */ 831 if (!table) 832 return; 833 834 slrt = (struct slr_table *)table; 835 836 if (slrt->magic != SLR_TABLE_MAGIC) 837 return; 838 839 /* Add config information to measure the UEFI memory map */ 840 uefi_config = (struct slr_entry_uefi_config *)buf; 841 uefi_config->hdr.tag = SLR_ENTRY_UEFI_CONFIG; 842 uefi_config->hdr.size = sizeof(*uefi_config) + sizeof(*uefi_entry); 843 uefi_config->revision = SLR_UEFI_CONFIG_REVISION; 844 uefi_config->nr_entries = 1; 845 uefi_entry = (struct slr_uefi_cfg_entry *)(buf + sizeof(*uefi_config)); 846 uefi_entry->pcr = 18; 847 uefi_entry->cfg = boot_params->efi_info.efi_memmap; 848 memmap_hi = boot_params->efi_info.efi_memmap_hi; 849 uefi_entry->cfg |= memmap_hi << 32; 850 uefi_entry->size = boot_params->efi_info.efi_memmap_size; 851 memcpy(&uefi_entry->evt_info[0], "Measured UEFI memory map", 852 strlen("Measured UEFI memory map")); 853 854 if (slr_add_entry(slrt, (struct slr_entry_hdr *)uefi_config)) 855 return; 856 857 /* Jump through DL stub to initiate Secure Launch */ 858 dlinfo = (struct slr_entry_dl_info *) 859 slr_next_entry_by_tag(slrt, NULL, SLR_ENTRY_DL_INFO); 860 > 861 asm volatile ("jmp *%%rax" 862 : : "a" (dlinfo->dl_handler), "D" (&dlinfo->bl_context)); 863 } 864 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki