Messages in this thread | | | Date | Fri, 3 Sep 2021 11:23:36 +0200 | From | Peter Zijlstra <> | Subject | Re: vmlinux.o: warning: objtool: mce_wrmsrl.constprop.0()+0x6b: call to __sanitizer_cov_trace_pc() leaves .noinstr.text section |
| |
On Thu, Sep 02, 2021 at 09:35:12PM +0200, Borislav Petkov wrote: > On Sun, Aug 22, 2021 at 01:39:40PM +0800, kernel test robot wrote: > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > > head: 9ff50bf2f2ff5fab01cac26d8eed21a89308e6ef > > commit: e100777016fdf6ec3a9d7c1773b15a2b5eca6c55 x86/mce: Annotate mce_rd/wrmsrl() with noinstr > > date: 11 months ago > > config: x86_64-buildonly-randconfig-r003-20210822 (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/torvalds/linux.git/commit/?id=e100777016fdf6ec3a9d7c1773b15a2b5eca6c55 > > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > > git fetch --no-tags linus master > > git checkout e100777016fdf6ec3a9d7c1773b15a2b5eca6c55 > > # 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@intel.com> > > > > All warnings (new ones prefixed by >>): > > > > >> vmlinux.o: warning: objtool: mce_wrmsrl.constprop.0()+0x6b: call to __sanitizer_cov_trace_pc() leaves .noinstr.text section > > vmlinux.o: warning: objtool: do_machine_check()+0xe1a: call to mce_panic.isra.0() leaves .noinstr.text section > > vmlinux.o: warning: objtool: exc_machine_check()+0x1af: call to __sanitizer_cov_trace_pc() leaves .noinstr.text section > > vmlinux.o: warning: objtool: lock_is_held_type()+0x3c: call to check_flags() leaves .noinstr.text section > > vmlinux.o: warning: objtool: __context_tracking_enter()+0x9d: call to __sanitizer_cov_trace_pc() leaves .noinstr.text section > > vmlinux.o: warning: objtool: __context_tracking_exit()+0x42: call to __sanitizer_cov_trace_pc() leaves .noinstr.text section > > The sanitizer stuff is being NOPed out with newer compilers, says > peterz. And I can confirm after testing with your .config and with > gcc-11.
So I was wondering why they'd show up in any case, since objtool is supposed to NOP them, but then I remembered I still have this patch pending:
https://lore.kernel.org/r/20210624095147.818783799@infradead.org
Which I suspect will cure that for older GCC.
| |