tree:
https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pks/v0.0
head: eed09ce6622d550ab5b10a86e7dd6c2ff6bd59d9
commit: 32e6645b0f3c84ee6e8d9a5566dffa5003821e37 [18/27] x86, mm: Protect page tables with
PKS
config: x86_64-randconfig-a012-20211103 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
#
https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git/commit/?id...
git remote add rppt
https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git
git fetch --no-tags rppt pks/v0.0
git checkout 32e6645b0f3c84ee6e8d9a5566dffa5003821e37
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
ld: arch/x86/entry/common.o: in function `pkrs_restore_irq':
> arch/x86/entry/common.c:304: undefined reference to
`write_pkrs'
ld: arch/x86/entry/common.o: in function
`pkrs_save_set_irq':
arch/x86/entry/common.c:293: undefined reference to `write_pkrs'
ld: arch/x86/kernel/process_64.o: in function `__switch_to':
> arch/x86/kernel/process_64.c:661: undefined reference to
`write_pkrs'
ld: arch/x86/kernel/cpu/common.o: in function
`identify_cpu':
> arch/x86/kernel/cpu/common.c:1601: undefined reference to
`setup_pks'
ld: arch/x86/mm/pgtable.o: in function
`enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function
`disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function
`enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function
`disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
>> ld: arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function
`disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function
`enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
>> ld: arch/x86/mm/pgtable.c:959: undefined reference
to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function
`enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function
`disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function
`enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function
`disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
>> ld: arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
> arch/x86/mm/pgtable.c:959: undefined reference to
`pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function
`disable_pgtable_write':
> arch/x86/mm/pgtable.c:965: undefined reference to
`pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function
`enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `enable_pgtable_write':
arch/x86/mm/pgtable.c:959: undefined reference to `pks_mk_readwrite'
ld: arch/x86/mm/pgtable.o: in function `disable_pgtable_write':
arch/x86/mm/pgtable.c:965: undefined reference to `pks_mk_readonly'
ld: arch/x86/mm/pgtable.o: in function `pks_page_init':
arch/x86/mm/pgtable.c:974: undefined reference to `pks_key_alloc'
ld: arch/x86/mm/pgtable.c:982: undefined reference to `pks_key_free'
vim +959 arch/x86/mm/pgtable.c
955
956 void enable_pgtable_write(void)
957 {
958 if (pks_page_en)
959 pks_mk_readwrite(STATIC_TABLE_KEY);
960 }
961
962 void disable_pgtable_write(void)
963 {
964 if (pks_page_en)
965 pks_mk_readonly(STATIC_TABLE_KEY);
966 }
967
968 static int __init pks_page_init(void)
969 {
970 /*
971 * TODO: Needs global keys to be initially set globally readable, for now
972 * warn if its not the expected static key
973 */
974 pks_key = pks_key_alloc("PKS protected page tables");
975 if (pks_key < 0)
976 goto out;
977 WARN_ON(pks_key != STATIC_TABLE_KEY);
978
979 pks_page_en = !init_grouped_page_cache(&gpc_pks, GFP_KERNEL |
PGTABLE_HIGHMEM,
980 _pks_protect, _pks_unprotect);
981 if (!pks_page_en)
982 pks_key_free(pks_key);
983
984 out:
985 return !pks_page_en;
986 }
987
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org