From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============0395712466720723341==" MIME-Version: 1.0 From: kernel test robot Subject: Re: [PATCH 1/4] drivers core: Introduce CPU type sysfs interface Date: Sat, 03 Oct 2020 16:07:06 +0800 Message-ID: <202010031613.c0s0moHM-lkp@intel.com> List-Id: To: kbuild@lists.01.org --===============0395712466720723341== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable CC: kbuild-all(a)lists.01.org In-Reply-To: <20201003011745.7768-2-ricardo.neri-calderon@linux.intel.com> References: <20201003011745.7768-2-ricardo.neri-calderon@linux.intel.com> TO: Ricardo Neri TO: "Greg Kroah-Hartman" TO: x86(a)kernel.org TO: Borislav Petkov TO: Ingo Molnar TO: Thomas Gleixner TO: "Rafael J. Wysocki" CC: Tony Luck CC: Len Brown CC: "Ravi V. Shankar" CC: linux-kernel(a)vger.kernel.org Hi Ricardo, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on tip/x86/core] [also build test WARNING on tip/master driver-core/driver-core-testing linu= s/master v5.9-rc7 next-20201002] [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] url: https://github.com/0day-ci/linux/commits/Ricardo-Neri/drivers-core-= Introduce-CPU-type-sysfs-interface/20201003-091754 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 238c911= 15cd05c71447ea071624a4c9fe661f970 :::::: branch date: 7 hours ago :::::: commit date: 7 hours ago config: s390-randconfig-m031-20201002 (attached as .config) compiler: s390-linux-gcc (GCC) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Reported-by: Dan Carpenter New smatch warnings: drivers/base/cpu.c:735 cpu_type_sysfs_online() warn: we never enter this lo= op drivers/base/cpu.c:772 cpu_type_sysfs_offline() warn: we never enter this l= oop Old smatch warnings: drivers/base/cpu.c:747 cpu_type_sysfs_online() error: we previously assumed= 'mask' could be null (see line 747) drivers/base/cpu.c:779 cpu_type_sysfs_offline() error: we previously assume= d 'mask' could be null (see line 779) vim +735 drivers/base/cpu.c 110646cfb07328 Ricardo Neri 2020-10-02 728 = 110646cfb07328 Ricardo Neri 2020-10-02 729 static int cpu_type_sysfs_onli= ne(unsigned int cpu) 110646cfb07328 Ricardo Neri 2020-10-02 730 { 110646cfb07328 Ricardo Neri 2020-10-02 731 u32 cpu_type =3D arch_get_cpu= _type(cpu); 110646cfb07328 Ricardo Neri 2020-10-02 732 struct cpumask *mask; 110646cfb07328 Ricardo Neri 2020-10-02 733 int i; 110646cfb07328 Ricardo Neri 2020-10-02 734 = 110646cfb07328 Ricardo Neri 2020-10-02 @735 for (i =3D 0; i < ARRAY_SIZE(= cpu_type_devices); i++) { 110646cfb07328 Ricardo Neri 2020-10-02 736 u32 this_cpu_type; 110646cfb07328 Ricardo Neri 2020-10-02 737 = 110646cfb07328 Ricardo Neri 2020-10-02 738 /* 110646cfb07328 Ricardo Neri 2020-10-02 739 * The first devices in the = array are used first. Thus, create 110646cfb07328 Ricardo Neri 2020-10-02 740 * a new device as well as s= ysfs directory and for the type of 110646cfb07328 Ricardo Neri 2020-10-02 741 * @cpu. 110646cfb07328 Ricardo Neri 2020-10-02 742 */ 110646cfb07328 Ricardo Neri 2020-10-02 743 if (!cpu_type_devices[i]) 110646cfb07328 Ricardo Neri 2020-10-02 744 return cpu_type_create_devi= ce(cpu, i); 110646cfb07328 Ricardo Neri 2020-10-02 745 = 110646cfb07328 Ricardo Neri 2020-10-02 746 mask =3D dev_get_drvdata(cpu= _type_devices[i]); 110646cfb07328 Ricardo Neri 2020-10-02 747 if (!mask && !cpumask_weight= (mask)) { 110646cfb07328 Ricardo Neri 2020-10-02 748 /* 110646cfb07328 Ricardo Neri 2020-10-02 749 * We should not be here. B= e paranoid about 110646cfb07328 Ricardo Neri 2020-10-02 750 * NULL pointers. 110646cfb07328 Ricardo Neri 2020-10-02 751 */ 110646cfb07328 Ricardo Neri 2020-10-02 752 dev_err(cpu_type_devices[i]= , "CPU mask is invalid"); 110646cfb07328 Ricardo Neri 2020-10-02 753 return -EINVAL; 110646cfb07328 Ricardo Neri 2020-10-02 754 } 110646cfb07328 Ricardo Neri 2020-10-02 755 = 110646cfb07328 Ricardo Neri 2020-10-02 756 this_cpu_type =3D arch_get_c= pu_type(cpumask_first(mask)); 110646cfb07328 Ricardo Neri 2020-10-02 757 if (cpu_type =3D=3D this_cpu= _type) { 110646cfb07328 Ricardo Neri 2020-10-02 758 cpumask_set_cpu(cpu, mask); 110646cfb07328 Ricardo Neri 2020-10-02 759 return 0; 110646cfb07328 Ricardo Neri 2020-10-02 760 } 110646cfb07328 Ricardo Neri 2020-10-02 761 } 110646cfb07328 Ricardo Neri 2020-10-02 762 = 110646cfb07328 Ricardo Neri 2020-10-02 763 return -ENODEV; 110646cfb07328 Ricardo Neri 2020-10-02 764 } 110646cfb07328 Ricardo Neri 2020-10-02 765 = 110646cfb07328 Ricardo Neri 2020-10-02 766 static int cpu_type_sysfs_offl= ine(unsigned int cpu) 110646cfb07328 Ricardo Neri 2020-10-02 767 { 110646cfb07328 Ricardo Neri 2020-10-02 768 u32 cpu_type =3D arch_get_cpu= _type(cpu); 110646cfb07328 Ricardo Neri 2020-10-02 769 struct cpumask *mask; 110646cfb07328 Ricardo Neri 2020-10-02 770 int i; 110646cfb07328 Ricardo Neri 2020-10-02 771 = 110646cfb07328 Ricardo Neri 2020-10-02 @772 for (i =3D 0; i < ARRAY_SIZE(= cpu_type_devices); i++) { 110646cfb07328 Ricardo Neri 2020-10-02 773 u32 this_cpu_type; 110646cfb07328 Ricardo Neri 2020-10-02 774 = 110646cfb07328 Ricardo Neri 2020-10-02 775 if (!cpu_type_devices[i]) 110646cfb07328 Ricardo Neri 2020-10-02 776 continue; 110646cfb07328 Ricardo Neri 2020-10-02 777 = 110646cfb07328 Ricardo Neri 2020-10-02 778 mask =3D dev_get_drvdata(cpu= _type_devices[i]); 110646cfb07328 Ricardo Neri 2020-10-02 779 if (!mask && !cpumask_weight= (mask)) { 110646cfb07328 Ricardo Neri 2020-10-02 780 /* 110646cfb07328 Ricardo Neri 2020-10-02 781 * We should not be here. B= e paranoid about 110646cfb07328 Ricardo Neri 2020-10-02 782 * NULL pointers. 110646cfb07328 Ricardo Neri 2020-10-02 783 */ 110646cfb07328 Ricardo Neri 2020-10-02 784 dev_err(cpu_type_devices[i]= , "CPU mask is invalid"); 110646cfb07328 Ricardo Neri 2020-10-02 785 continue; 110646cfb07328 Ricardo Neri 2020-10-02 786 } 110646cfb07328 Ricardo Neri 2020-10-02 787 = 110646cfb07328 Ricardo Neri 2020-10-02 788 this_cpu_type =3D arch_get_c= pu_type(cpumask_first(mask)); 110646cfb07328 Ricardo Neri 2020-10-02 789 if (cpu_type =3D=3D this_cpu= _type) { 110646cfb07328 Ricardo Neri 2020-10-02 790 cpumask_clear_cpu(cpu, mask= ); 110646cfb07328 Ricardo Neri 2020-10-02 791 return 0; 110646cfb07328 Ricardo Neri 2020-10-02 792 } 110646cfb07328 Ricardo Neri 2020-10-02 793 } 110646cfb07328 Ricardo Neri 2020-10-02 794 = 110646cfb07328 Ricardo Neri 2020-10-02 795 /* 110646cfb07328 Ricardo Neri 2020-10-02 796 * If we are here, no matchin= g cpu_type was found. This CPU was not 110646cfb07328 Ricardo Neri 2020-10-02 797 * accounted for@hotplug o= nline. 110646cfb07328 Ricardo Neri 2020-10-02 798 */ 110646cfb07328 Ricardo Neri 2020-10-02 799 pr_warn("Unexpected CPU offli= ne!\n"); 110646cfb07328 Ricardo Neri 2020-10-02 800 = 110646cfb07328 Ricardo Neri 2020-10-02 801 return -ENODEV; 110646cfb07328 Ricardo Neri 2020-10-02 802 } 110646cfb07328 Ricardo Neri 2020-10-02 803 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --===============0395712466720723341== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 XzTVMODuLLp8bELd6h86rL+PmVQBAA== --===============0395712466720723341==--