From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============8620663725374539257==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: [linux-stable-rc:linux-4.4.y 7217/9999] arch/mips/kernel/smp.c:344:12: error: comparison between signed and unsigned integer expressions Date: Fri, 12 Feb 2021 09:01:05 +0800 Message-ID: <202102120955.LphiFs9F-lkp@intel.com> List-Id: --===============8620663725374539257== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable= -rc.git linux-4.4.y head: 95a3867e897abd7811196123f81a119a75aba863 commit: e3484129eb0f7c67c85868d1584f1e6335e86efa [7217/9999] MIPS: VDSO: Pr= event use of smp_processor_id() config: mips-bmips_be_defconfig (attached as .config) compiler: mips-linux-gcc (GCC) 7.5.0 reproduce (this is a W=3D1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stab= le-rc.git/commit/?id=3De3484129eb0f7c67c85868d1584f1e6335e86efa git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux= /kernel/git/stable/linux-stable-rc.git git fetch --no-tags linux-stable-rc linux-4.4.y git checkout e3484129eb0f7c67c85868d1584f1e6335e86efa # save the attached .config to linux build tree COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-7.5.0 make.cross = ARCH=3Dmips = If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): arch/mips/kernel/smp.c:156:17: error: no previous prototype for 'start_s= econdary' [-Werror=3Dmissing-prototypes] asmlinkage void start_secondary(void) ^~~~~~~~~~~~~~~ arch/mips/kernel/smp.c:278:5: error: no previous prototype for 'setup_pr= ofiling_timer' [-Werror=3Dmissing-prototypes] int setup_profiling_timer(unsigned int multiplier) ^~~~~~~~~~~~~~~~~~~~~ In file included from arch/mips/include/asm/processor.h:14:0, from arch/mips/include/asm/thread_info.h:15, from include/linux/thread_info.h:54, from include/asm-generic/preempt.h:4, from arch/mips/include/generated/asm/preempt.h:1, from include/linux/preempt.h:59, from include/linux/interrupt.h:8, from arch/mips/kernel/smp.c:24: arch/mips/kernel/smp.c: In function 'flush_tlb_mm': include/linux/cpumask.h:221:9: error: comparison between signed and unsi= gned integer expressions [-Werror=3Dsign-compare] (cpu) < nr_cpu_ids;) ^ include/linux/cpumask.h:725:36: note: in expansion of macro 'for_each_cp= u' #define for_each_online_cpu(cpu) for_each_cpu((cpu), cpu_online_mask) ^~~~~~~~~~~~ arch/mips/kernel/smp.c:343:3: note: in expansion of macro 'for_each_onli= ne_cpu' for_each_online_cpu(cpu) { ^~~~~~~~~~~~~~~~~~~ >> arch/mips/kernel/smp.c:344:12: error: comparison between signed and unsi= gned integer expressions [-Werror=3Dsign-compare] if (cpu !=3D smp_processor_id() && cpu_context(cpu, mm)) ^~ In file included from arch/mips/include/asm/processor.h:14:0, from arch/mips/include/asm/thread_info.h:15, from include/linux/thread_info.h:54, from include/asm-generic/preempt.h:4, from arch/mips/include/generated/asm/preempt.h:1, from include/linux/preempt.h:59, from include/linux/interrupt.h:8, from arch/mips/kernel/smp.c:24: arch/mips/kernel/smp.c: In function 'flush_tlb_range': include/linux/cpumask.h:221:9: error: comparison between signed and unsi= gned integer expressions [-Werror=3Dsign-compare] (cpu) < nr_cpu_ids;) ^ include/linux/cpumask.h:725:36: note: in expansion of macro 'for_each_cp= u' #define for_each_online_cpu(cpu) for_each_cpu((cpu), cpu_online_mask) ^~~~~~~~~~~~ arch/mips/kernel/smp.c:382:3: note: in expansion of macro 'for_each_onli= ne_cpu' for_each_online_cpu(cpu) { ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/smp.c:383:12: error: comparison between signed and unsi= gned integer expressions [-Werror=3Dsign-compare] if (cpu !=3D smp_processor_id() && cpu_context(cpu, mm)) ^~ In file included from arch/mips/include/asm/processor.h:14:0, from arch/mips/include/asm/thread_info.h:15, from include/linux/thread_info.h:54, from include/asm-generic/preempt.h:4, from arch/mips/include/generated/asm/preempt.h:1, from include/linux/preempt.h:59, from include/linux/interrupt.h:8, from arch/mips/kernel/smp.c:24: arch/mips/kernel/smp.c: In function 'flush_tlb_page': include/linux/cpumask.h:221:9: error: comparison between signed and unsi= gned integer expressions [-Werror=3Dsign-compare] (cpu) < nr_cpu_ids;) ^ include/linux/cpumask.h:725:36: note: in expansion of macro 'for_each_cp= u' #define for_each_online_cpu(cpu) for_each_cpu((cpu), cpu_online_mask) ^~~~~~~~~~~~ arch/mips/kernel/smp.c:428:3: note: in expansion of macro 'for_each_onli= ne_cpu' for_each_online_cpu(cpu) { ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/smp.c:429:12: error: comparison between signed and unsi= gned integer expressions [-Werror=3Dsign-compare] if (cpu !=3D smp_processor_id() && cpu_context(cpu, vma->vm_mm)) ^~ cc1: all warnings being treated as errors vim +344 arch/mips/kernel/smp.c 25969354a385f3 Ralf Baechle 2006-06-22 320 = ^1da177e4c3f41 Linus Torvalds 2005-04-16 321 /* ^1da177e4c3f41 Linus Torvalds 2005-04-16 322 * The following tlb flush c= alls are invoked when old translations are ^1da177e4c3f41 Linus Torvalds 2005-04-16 323 * being torn down, or pte a= ttributes are changing. For single threaded ^1da177e4c3f41 Linus Torvalds 2005-04-16 324 * address spaces, a new con= text is obtained on the current cpu, and tlb ^1da177e4c3f41 Linus Torvalds 2005-04-16 325 * context on other cpus are= invalidated to force a new context allocation ^1da177e4c3f41 Linus Torvalds 2005-04-16 326 * at switch_mm time, should= the mm ever be used on other cpus. For ^1da177e4c3f41 Linus Torvalds 2005-04-16 327 * multithreaded address spa= ces, intercpu interrupts have to be sent. ^1da177e4c3f41 Linus Torvalds 2005-04-16 328 * Another case where interc= pu interrupts are required is when the target ^1da177e4c3f41 Linus Torvalds 2005-04-16 329 * mm might be active on ano= ther cpu (eg debuggers doing the flushes on ^1da177e4c3f41 Linus Torvalds 2005-04-16 330 * behalf of debugees, kswap= d stealing pages from another process etc). ^1da177e4c3f41 Linus Torvalds 2005-04-16 331 * Kanoj 07/00. ^1da177e4c3f41 Linus Torvalds 2005-04-16 332 */ ^1da177e4c3f41 Linus Torvalds 2005-04-16 333 = ^1da177e4c3f41 Linus Torvalds 2005-04-16 334 void flush_tlb_mm(struct mm_= struct *mm) ^1da177e4c3f41 Linus Torvalds 2005-04-16 335 { ^1da177e4c3f41 Linus Torvalds 2005-04-16 336 preempt_disable(); ^1da177e4c3f41 Linus Torvalds 2005-04-16 337 = ^1da177e4c3f41 Linus Torvalds 2005-04-16 338 if ((atomic_read(&mm->mm_us= ers) !=3D 1) || (current->mm !=3D mm)) { c50cade95b075e Ralf Baechle 2007-10-04 339 smp_on_other_tlbs(flush_tl= b_mm_ipi, mm); ^1da177e4c3f41 Linus Torvalds 2005-04-16 340 } else { b5eb5511453953 Ralf Baechle 2007-10-03 341 unsigned int cpu; b5eb5511453953 Ralf Baechle 2007-10-03 342 = 0b5f9c005def15 Rusty Russell 2012-03-29 343 for_each_online_cpu(cpu) { 0b5f9c005def15 Rusty Russell 2012-03-29 @344 if (cpu !=3D smp_processo= r_id() && cpu_context(cpu, mm)) b5eb5511453953 Ralf Baechle 2007-10-03 345 cpu_context(cpu, mm) =3D= 0; ^1da177e4c3f41 Linus Torvalds 2005-04-16 346 } 0b5f9c005def15 Rusty Russell 2012-03-29 347 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 348 local_flush_tlb_mm(mm); ^1da177e4c3f41 Linus Torvalds 2005-04-16 349 = ^1da177e4c3f41 Linus Torvalds 2005-04-16 350 preempt_enable(); ^1da177e4c3f41 Linus Torvalds 2005-04-16 351 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 352 = :::::: The code at line 344 was first introduced by commit :::::: 0b5f9c005def154f9c21f9be0223b65b50d54368 remove references to cpu_*_= map in arch/ :::::: TO: Rusty Russell :::::: CC: Rusty Russell --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============8620663725374539257== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 wjMcyQXxqJiDxzHNCP8H0S8DfAOzAAA= --===============8620663725374539257==--