Re: Re: [PATCH v1] pinctrl: ralink: rt2880: Check for return value of devm_kcalloc()
On Fri, Apr 1, 2022 at 6:06 AM unSimple wrote: > > The main consideration of the 'continue' in the patch is that those > statements are inner a loop. > > The next allocation may be successful so I think it is better to use > 'continue' here. Please, do not top-post! What you explained is logical from APIs point of view, what I was asking is about functional point of view. Why do you think the skipping iteration is fine? You need to explain this in the code/commit message. > At 2022-03-29 19:45:50, "Andy Shevchenko" wrote: > >On Tue, Mar 29, 2022 at 11:36 AM QintaoShen wrote: > >> > >> The memory allocation function devm_kcalloc() may return NULL pointer, > > > >may --> might > > > >> so it is better to add a check for 'p->func[i]->pins' to avoid possible > >> NULL pointer dereference. ... > >> @@ -266,6 +266,10 @@ static int rt2880_pinmux_pins(struct rt2880_priv *p) > >> p->func[i]->pin_count, > >> sizeof(int), > >> GFP_KERNEL); > > > >> + > > > >Stray change. Also it seems it has trailing space character(s). > > > >> +if (!p->func[i]->pins) > > > >> +continue; > > > >Why is 'continue' the proper choice here? No clarification is given in > >the commit message. > > > >> for (j = 0; j < p->func[i]->pin_count; j++) > >> p->func[i]->pins[j] = p->func[i]->pin_first + j; -- With Best Regards, Andy Shevchenko ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[staging:staging-testing] BUILD SUCCESS 507975d937e80796e8bb2b41f19d1e4a71ec40b7
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-testing branch HEAD: 507975d937e80796e8bb2b41f19d1e4a71ec40b7 staging: rtl8723bs: refactor rtw_ch2freq() elapsed time: 911m configs tested: 110 configs skipped: 3 The following configs have been built successfully. More configs may be tested in the coming days. gcc tested configs: arm defconfig arm allmodconfig arm64 defconfig arm64allyesconfig arm allyesconfig i386 randconfig-c001 ia64zx1_defconfig h8300 edosk2674_defconfig arm badge4_defconfig sh landisk_defconfig mips ip32_defconfig m68k alldefconfig mips loongson1b_defconfig mips mpc30x_defconfig openrisc or1klitex_defconfig nios2 10m50_defconfig armkeystone_defconfig parisc defconfig sh polaris_defconfig x86_64randconfig-c001 arm randconfig-c002-20220331 ia64defconfig ia64 allmodconfig ia64 allyesconfig m68kdefconfig m68k allmodconfig m68k allyesconfig alpha defconfig alphaallyesconfig cskydefconfig nios2allyesconfig arc defconfig sh allmodconfig h8300allyesconfig xtensa allyesconfig parisc64defconfig s390 allmodconfig parisc allyesconfig s390defconfig s390 allyesconfig i386 debian-10.3-kselftests i386 debian-10.3 i386defconfig i386 allyesconfig sparcallyesconfig sparc defconfig nios2 defconfig arc allyesconfig mips allyesconfig mips allmodconfig powerpc allnoconfig powerpc allmodconfig powerpc allyesconfig x86_64randconfig-a004 x86_64randconfig-a002 x86_64randconfig-a006 i386 randconfig-a001 i386 randconfig-a003 i386 randconfig-a005 x86_64randconfig-a013 x86_64randconfig-a011 x86_64randconfig-a015 i386 randconfig-a014 i386 randconfig-a012 i386 randconfig-a016 arc randconfig-r043-20220331 riscvallmodconfig riscvnommu_k210_defconfig riscv allnoconfig riscvallyesconfig riscv defconfig riscvnommu_virt_defconfig riscv rv32_defconfig um i386_defconfig um x86_64_defconfig x86_64 defconfig x86_64 allyesconfig x86_64 kexec x86_64 rhel-8.3 x86_64 rhel-8.3-func x86_64 rhel-8.3-kunit x86_64rhel-8.3-kselftests clang tested configs: powerpc randconfig-c003-20220331 x86_64randconfig-c007 s390 randconfig-c005-20220331 arm randconfig-c002-20220331 riscvrandconfig-c006-20220331 i386 randconfig-c001 mips randconfig-c004-20220331 riscv allnoconfig arm mainstone_defconfig arm spitz_defconfig powerpc ppc44x_defconfig powerpc lite5200b_defconfig arm pxa168_defconfig arm colibri_pxa300_defconfig arm spear13xx_defconfig x86_64randconfig-a005 x86_64randconfig-a001 x86_64randconfig-a003
[driver-core:kobject-const] BUILD SUCCESS 5ccc23cddfc5a6d1a41a21e456b9ce5e8c238d53
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git kobject-const branch HEAD: 5ccc23cddfc5a6d1a41a21e456b9ce5e8c238d53 kobject: kobj_type: remove default_attrs elapsed time: 1001m configs tested: 112 configs skipped: 3 The following configs have been built successfully. More configs may be tested in the coming days. gcc tested configs: arm allyesconfig arm defconfig arm allmodconfig arm64 defconfig arm64allyesconfig i386 randconfig-c001 ia64zx1_defconfig h8300 edosk2674_defconfig mips ip32_defconfig arm badge4_defconfig sh landisk_defconfig m68k alldefconfig mips loongson1b_defconfig mips mpc30x_defconfig openrisc or1klitex_defconfig arm iop32x_defconfig arc nsimosci_hs_smp_defconfig sh magicpanelr2_defconfig x86_64randconfig-c001 arm randconfig-c002-20220331 ia64 allyesconfig ia64 allmodconfig ia64defconfig m68kdefconfig m68k allmodconfig m68k allyesconfig alpha defconfig alphaallyesconfig cskydefconfig nios2allyesconfig arc defconfig sh allmodconfig h8300allyesconfig xtensa allyesconfig parisc defconfig parisc64defconfig s390 allmodconfig parisc allyesconfig s390defconfig s390 allyesconfig nios2 defconfig arc allyesconfig i386 debian-10.3-kselftests i386 debian-10.3 i386defconfig i386 allyesconfig sparc defconfig sparcallyesconfig mips allyesconfig mips allmodconfig powerpc allnoconfig powerpc allmodconfig powerpc allyesconfig x86_64randconfig-a004 x86_64randconfig-a002 x86_64randconfig-a006 i386 randconfig-a001 i386 randconfig-a003 i386 randconfig-a005 x86_64randconfig-a015 x86_64randconfig-a013 x86_64randconfig-a011 i386 randconfig-a014 i386 randconfig-a012 i386 randconfig-a016 arc randconfig-r043-20220331 riscvallmodconfig riscvnommu_k210_defconfig riscvnommu_virt_defconfig riscv allnoconfig riscv rv32_defconfig riscvallyesconfig riscv defconfig um i386_defconfig um x86_64_defconfig x86_64 defconfig x86_64 allyesconfig x86_64 kexec x86_64 rhel-8.3-func x86_64 rhel-8.3 x86_64 rhel-8.3-kunit x86_64rhel-8.3-kselftests clang tested configs: powerpc randconfig-c003-20220331 x86_64randconfig-c007 s390 randconfig-c005-20220331 arm randconfig-c002-20220331 riscvrandconfig-c006-20220331 mips randconfig-c004-20220331 i386 randconfig-c001 riscv allnoconfig arm mainstone_defconfig arm spitz_defconfig powerpc ppc44x_defconfig powerpc lite5200b_defconfig arm pxa168_defconfig arm colibri_pxa300_defconfig powerpc bluestone_defconfig mips pic32mzda_defconfig powerpcgamecube_defconfig x86_64randconfig-a0