From: kernel test robot <lkp@intel.com> To: Jakub Jelinek <jakub@redhat.com> Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org, "Peter Zijlstra (Intel)" <peterz@infradead.org>, Andrew Morton <akpm@linux-foundation.org>, Linux Memory Management List <linux-mm@kvack.org> Subject: arch/mips/mm/tlbex.c:2599 check_pabits() warn: always true condition '(fillbits >= ((__builtin_constant_p(0)) ?(((0) < 2) ?0:63 - __builtin_clzll(0)):((4 <= 4)) ?__ilog2_u32(0):__ilog2_u64(0))) => (0-u32max >= 0)' Date: Thu, 16 Dec 2021 19:41:25 +0800 [thread overview] Message-ID: <202112161929.ccx97Im9-lkp@intel.com> (raw) tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 2b14864acbaaf03d9c01982e243a84632524c3ac commit: 2f78788b55baa3410b1ec91a576286abe1ad4d6a ilog2: improve ilog2 for constant arguments date: 1 year ago config: mips-randconfig-m031-20211216 (https://download.01.org/0day-ci/archive/20211216/202112161929.ccx97Im9-lkp@intel.com/config) compiler: mips64-linux-gcc (GCC) 11.2.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> New smatch warnings: arch/mips/mm/tlbex.c:2599 check_pabits() warn: always true condition '(fillbits >= ((__builtin_constant_p(0)) ?(((0) < 2) ?0:63 - __builtin_clzll(0)):((4 <= 4)) ?__ilog2_u32(0):__ilog2_u64(0))) => (0-u32max >= 0)' Old smatch warnings: arch/mips/mm/tlbex.c:1681 iPTE_LW() warn: curly braces intended? arch/mips/mm/tlbex.c:1713 iPTE_SW() warn: inconsistent indenting vim +2599 arch/mips/mm/tlbex.c c5b367835cfc7a Steven J. Hill 2015-02-26 2569 00bf1c691d082c Paul Burton 2015-09-22 2570 static void check_pabits(void) 00bf1c691d082c Paul Burton 2015-09-22 2571 { 00bf1c691d082c Paul Burton 2015-09-22 2572 unsigned long entry; 00bf1c691d082c Paul Burton 2015-09-22 2573 unsigned pabits, fillbits; 00bf1c691d082c Paul Burton 2015-09-22 2574 00bf1c691d082c Paul Burton 2015-09-22 2575 if (!cpu_has_rixi || !_PAGE_NO_EXEC) { 00bf1c691d082c Paul Burton 2015-09-22 2576 /* 00bf1c691d082c Paul Burton 2015-09-22 2577 * We'll only be making use of the fact that we can rotate bits 00bf1c691d082c Paul Burton 2015-09-22 2578 * into the fill if the CPU supports RIXI, so don't bother 00bf1c691d082c Paul Burton 2015-09-22 2579 * probing this for CPUs which don't. 00bf1c691d082c Paul Burton 2015-09-22 2580 */ 00bf1c691d082c Paul Burton 2015-09-22 2581 return; 00bf1c691d082c Paul Burton 2015-09-22 2582 } 00bf1c691d082c Paul Burton 2015-09-22 2583 00bf1c691d082c Paul Burton 2015-09-22 2584 write_c0_entrylo0(~0ul); 00bf1c691d082c Paul Burton 2015-09-22 2585 back_to_back_c0_hazard(); 00bf1c691d082c Paul Burton 2015-09-22 2586 entry = read_c0_entrylo0(); 00bf1c691d082c Paul Burton 2015-09-22 2587 00bf1c691d082c Paul Burton 2015-09-22 2588 /* clear all non-PFN bits */ 00bf1c691d082c Paul Burton 2015-09-22 2589 entry &= ~((1 << MIPS_ENTRYLO_PFN_SHIFT) - 1); 00bf1c691d082c Paul Burton 2015-09-22 2590 entry &= ~(MIPS_ENTRYLO_RI | MIPS_ENTRYLO_XI); 00bf1c691d082c Paul Burton 2015-09-22 2591 00bf1c691d082c Paul Burton 2015-09-22 2592 /* find a lower bound on PABITS, and upper bound on fill bits */ 00bf1c691d082c Paul Burton 2015-09-22 2593 pabits = fls_long(entry) + 6; 00bf1c691d082c Paul Burton 2015-09-22 2594 fillbits = max_t(int, (int)BITS_PER_LONG - pabits, 0); 00bf1c691d082c Paul Burton 2015-09-22 2595 00bf1c691d082c Paul Burton 2015-09-22 2596 /* minus the RI & XI bits */ 00bf1c691d082c Paul Burton 2015-09-22 2597 fillbits -= min_t(unsigned, fillbits, 2); 00bf1c691d082c Paul Burton 2015-09-22 2598 00bf1c691d082c Paul Burton 2015-09-22 @2599 if (fillbits >= ilog2(_PAGE_NO_EXEC)) 00bf1c691d082c Paul Burton 2015-09-22 2600 fill_includes_sw_bits = true; 00bf1c691d082c Paul Burton 2015-09-22 2601 00bf1c691d082c Paul Burton 2015-09-22 2602 pr_debug("Entry* registers contain %u fill bits\n", fillbits); 00bf1c691d082c Paul Burton 2015-09-22 2603 } 00bf1c691d082c Paul Burton 2015-09-22 2604 :::::: The code at line 2599 was first introduced by commit :::::: 00bf1c691d082c1945fdba032c03a9a82e9e7e61 MIPS: tlbex: Avoid placing software PTE bits in Entry* PFN fields :::::: TO: Paul Burton <paul.burton@imgtec.com> :::::: CC: Ralf Baechle <ralf@linux-mips.org> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: arch/mips/mm/tlbex.c:2599 check_pabits() warn: always true condition '(fillbits >= ((__builtin_constant_p(0)) ?(((0) < 2) ?0:63 - __builtin_clzll(0)):((4 <= 4)) ?__ilog2_u32(0):__ilog2_u64(0))) => (0-u32max >= 0)' Date: Thu, 16 Dec 2021 19:41:25 +0800 [thread overview] Message-ID: <202112161929.ccx97Im9-lkp@intel.com> (raw) [-- Attachment #1: Type: text/plain, Size: 4019 bytes --] tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 2b14864acbaaf03d9c01982e243a84632524c3ac commit: 2f78788b55baa3410b1ec91a576286abe1ad4d6a ilog2: improve ilog2 for constant arguments date: 1 year ago config: mips-randconfig-m031-20211216 (https://download.01.org/0day-ci/archive/20211216/202112161929.ccx97Im9-lkp(a)intel.com/config) compiler: mips64-linux-gcc (GCC) 11.2.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> New smatch warnings: arch/mips/mm/tlbex.c:2599 check_pabits() warn: always true condition '(fillbits >= ((__builtin_constant_p(0)) ?(((0) < 2) ?0:63 - __builtin_clzll(0)):((4 <= 4)) ?__ilog2_u32(0):__ilog2_u64(0))) => (0-u32max >= 0)' Old smatch warnings: arch/mips/mm/tlbex.c:1681 iPTE_LW() warn: curly braces intended? arch/mips/mm/tlbex.c:1713 iPTE_SW() warn: inconsistent indenting vim +2599 arch/mips/mm/tlbex.c c5b367835cfc7a Steven J. Hill 2015-02-26 2569 00bf1c691d082c Paul Burton 2015-09-22 2570 static void check_pabits(void) 00bf1c691d082c Paul Burton 2015-09-22 2571 { 00bf1c691d082c Paul Burton 2015-09-22 2572 unsigned long entry; 00bf1c691d082c Paul Burton 2015-09-22 2573 unsigned pabits, fillbits; 00bf1c691d082c Paul Burton 2015-09-22 2574 00bf1c691d082c Paul Burton 2015-09-22 2575 if (!cpu_has_rixi || !_PAGE_NO_EXEC) { 00bf1c691d082c Paul Burton 2015-09-22 2576 /* 00bf1c691d082c Paul Burton 2015-09-22 2577 * We'll only be making use of the fact that we can rotate bits 00bf1c691d082c Paul Burton 2015-09-22 2578 * into the fill if the CPU supports RIXI, so don't bother 00bf1c691d082c Paul Burton 2015-09-22 2579 * probing this for CPUs which don't. 00bf1c691d082c Paul Burton 2015-09-22 2580 */ 00bf1c691d082c Paul Burton 2015-09-22 2581 return; 00bf1c691d082c Paul Burton 2015-09-22 2582 } 00bf1c691d082c Paul Burton 2015-09-22 2583 00bf1c691d082c Paul Burton 2015-09-22 2584 write_c0_entrylo0(~0ul); 00bf1c691d082c Paul Burton 2015-09-22 2585 back_to_back_c0_hazard(); 00bf1c691d082c Paul Burton 2015-09-22 2586 entry = read_c0_entrylo0(); 00bf1c691d082c Paul Burton 2015-09-22 2587 00bf1c691d082c Paul Burton 2015-09-22 2588 /* clear all non-PFN bits */ 00bf1c691d082c Paul Burton 2015-09-22 2589 entry &= ~((1 << MIPS_ENTRYLO_PFN_SHIFT) - 1); 00bf1c691d082c Paul Burton 2015-09-22 2590 entry &= ~(MIPS_ENTRYLO_RI | MIPS_ENTRYLO_XI); 00bf1c691d082c Paul Burton 2015-09-22 2591 00bf1c691d082c Paul Burton 2015-09-22 2592 /* find a lower bound on PABITS, and upper bound on fill bits */ 00bf1c691d082c Paul Burton 2015-09-22 2593 pabits = fls_long(entry) + 6; 00bf1c691d082c Paul Burton 2015-09-22 2594 fillbits = max_t(int, (int)BITS_PER_LONG - pabits, 0); 00bf1c691d082c Paul Burton 2015-09-22 2595 00bf1c691d082c Paul Burton 2015-09-22 2596 /* minus the RI & XI bits */ 00bf1c691d082c Paul Burton 2015-09-22 2597 fillbits -= min_t(unsigned, fillbits, 2); 00bf1c691d082c Paul Burton 2015-09-22 2598 00bf1c691d082c Paul Burton 2015-09-22 @2599 if (fillbits >= ilog2(_PAGE_NO_EXEC)) 00bf1c691d082c Paul Burton 2015-09-22 2600 fill_includes_sw_bits = true; 00bf1c691d082c Paul Burton 2015-09-22 2601 00bf1c691d082c Paul Burton 2015-09-22 2602 pr_debug("Entry* registers contain %u fill bits\n", fillbits); 00bf1c691d082c Paul Burton 2015-09-22 2603 } 00bf1c691d082c Paul Burton 2015-09-22 2604 :::::: The code at line 2599 was first introduced by commit :::::: 00bf1c691d082c1945fdba032c03a9a82e9e7e61 MIPS: tlbex: Avoid placing software PTE bits in Entry* PFN fields :::::: TO: Paul Burton <paul.burton@imgtec.com> :::::: CC: Ralf Baechle <ralf@linux-mips.org> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
next reply other threads:[~2021-12-16 11:42 UTC|newest] Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-12-16 11:41 kernel test robot [this message] 2021-12-16 11:41 ` arch/mips/mm/tlbex.c:2599 check_pabits() warn: always true condition '(fillbits >= ((__builtin_constant_p(0)) ?(((0) < 2) ?0:63 - __builtin_clzll(0)):((4 <= 4)) ?__ilog2_u32(0):__ilog2_u64(0))) => (0-u32max >= 0)' kernel test robot -- strict thread matches above, loose matches on Subject: below -- 2021-11-28 4:48 kernel test robot 2021-11-28 4:48 ` kernel test robot 2021-09-14 14:08 kernel test robot 2021-09-14 14:08 ` kernel test robot 2021-08-25 14:05 kernel test robot 2021-08-25 14:05 ` kernel test robot 2021-05-20 18:14 kernel test robot 2021-05-20 18:14 ` kernel test robot
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=202112161929.ccx97Im9-lkp@intel.com \ --to=lkp@intel.com \ --cc=akpm@linux-foundation.org \ --cc=jakub@redhat.com \ --cc=kbuild-all@lists.01.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=peterz@infradead.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: linkBe 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.