Re: [Intel-wired-lan] [PATCH iwl-next v3 3/3] ixgbe: Cleanup after type convertion
Hi Jedrzej, kernel test robot noticed the following build errors: [auto build test ERROR on tnguy-next-queue/dev-queue] url: https://github.com/intel-lab-lkp/linux/commits/Jedrzej-Jagielski/ixgbe-Fix-smatch-warnings-after-type-convertion/20240119-015659 base: https://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git dev-queue patch link: https://lore.kernel.org/r/20240118134332.470907-3-jedrzej.jagielski%40intel.com patch subject: [PATCH iwl-next v3 3/3] ixgbe: Cleanup after type convertion config: x86_64-rhel-8.3-rust (https://download.01.org/0day-ci/archive/20240120/202401201602.mg8uew6k-...@intel.com/config) compiler: ClangBuiltLinux clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240120/202401201602.mg8uew6k-...@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202401201602.mg8uew6k-...@intel.com/ All errors (new ones prefixed by >>): >> drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c:774:27: error: use of >> undeclared identifier 'autoc2' 774 | u32 pma_pmd_10g_serial = autoc2 & IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_MASK; | ^ 1 error generated. vim +/autoc2 +774 drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c cd7e1f0b056c07 drivers/net/ixgbe/ixgbe_82599.cDon Skidmore 2009-10-08 761 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 762 /** 8620a103b5e38d drivers/net/ixgbe/ixgbe_82599.cMallikarjuna R Chilakala 2009-09-01 763 * ixgbe_setup_mac_link_82599 - Set MAC link speed 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 764 * @hw: pointer to hardware structure 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 765 * @speed: new link speed 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 766 * @autoneg_wait_to_complete: true when waiting for completion is needed 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 767 * 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 768 * Set the link speed in the AUTOC register and restarts link. 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 769 **/ 7e23e4751a3586 drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jedrzej Jagielski 2024-01-18 770 static int ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw, fd0326f2cf9e5d drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Josh Hay 2012-12-15 771ixgbe_link_speed speed, 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 772bool autoneg_wait_to_complete) 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 773 { 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 @774 u32 pma_pmd_10g_serial = autoc2 & IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_MASK; 11afc1b1fd802c drivers/net/ixgbe/ixgbe_82599.cPJ Waskiewicz 2009-02-27 775 ixgbe_link_speed link_capabilities = IXGBE_LINK_SPEED_UNKNOWN; 36f3bb88d9a5de drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jedrzej Jagielski 2024-01-18 776 u32 autoc2 = IXGBE_READ_REG(hw, IXGBE_AUTOC2); 36f3bb88d9a5de drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jedrzej Jagielski 2024-01-18 777 u32 pma_pmd_1g, link_mode, links_reg, i; 36f3bb88d9a5de drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jedrzej Jagielski 2024-01-18 778 bool autoneg = false; 36f3bb88d9a5de drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jedrzej Jagielski 2024-01-18 779 int status; ee98b577e7711d drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jacob Keller 2014-02-22 780 ee98b577e7711d drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jacob Keller 2014-02-22 781 /* holds the value of AUTOC register at this current point in time */ ee98b577e7711d drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jacob Keller 2014-02-22 782 u32 current_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); ee98b577e7711d drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c Jacob Keller 2014-02-22 783 /* holds the cached value of AUTOC register */ ee98b577e7711d drivers/net/ethernet/in
[Intel-wired-lan] [PATCH] ixgbe: Fix an error handling path in ixgbe_read_iosf_sb_reg_x550()
All error handling paths, except this one, go to 'out' where release_swfw_sync() is called. This call balances the acquire_swfw_sync() call done at the beginning of the function. Branch to the error handling path in order to correctly release some resources in case of error. Fixes: ae14a1d8e104 ("ixgbe: Fix IOSF SB access issues") Signed-off-by: Christophe JAILLET --- This patch is speculative, review with care. --- drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c index 6208923e29a2..c1adc94a5a65 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c @@ -716,7 +716,8 @@ static s32 ixgbe_read_iosf_sb_reg_x550(struct ixgbe_hw *hw, u32 reg_addr, if ((command & IXGBE_SB_IOSF_CTRL_RESP_STAT_MASK) != 0) { error = FIELD_GET(IXGBE_SB_IOSF_CTRL_CMPL_ERR_MASK, command); hw_dbg(hw, "Failed to read, error %x\n", error); - return -EIO; + ret = -EIO; + goto out; } if (!ret) -- 2.43.0
[Intel-wired-lan] [tnguy-net-queue:dev-queue] BUILD SUCCESS 8121182f2afe78c0e7a1803c10f9e619b6a0113e
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue.git dev-queue branch HEAD: 8121182f2afe78c0e7a1803c10f9e619b6a0113e idpf: avoid compiler padding in virtchnl2_ptype struct elapsed time: 1721m configs tested: 96 configs skipped: 0 The following configs have been built successfully. More configs may be tested in the coming days. tested configs: alpha allnoconfig gcc alpha defconfig gcc arc allnoconfig gcc arc defconfig gcc arc randconfig-001-20240120 gcc arc randconfig-002-20240120 gcc arm allnoconfig gcc arm defconfig clang arm randconfig-001-20240120 clang arm randconfig-002-20240120 clang arm randconfig-003-20240120 clang arm randconfig-004-20240120 clang arm64 allnoconfig gcc arm64 defconfig gcc arm64 randconfig-001-20240120 clang arm64 randconfig-002-20240120 clang arm64 randconfig-003-20240120 clang arm64 randconfig-004-20240120 clang csky allnoconfig gcc cskydefconfig gcc csky randconfig-001-20240120 gcc csky randconfig-002-20240120 gcc hexagon allnoconfig clang hexagon defconfig clang hexagon randconfig-001-20240120 clang hexagon randconfig-002-20240120 clang i386 allmodconfig clang i386 allnoconfig clang i386 allyesconfig clang i386 buildonly-randconfig-001-20240120 clang i386 buildonly-randconfig-002-20240120 clang i386 buildonly-randconfig-003-20240120 clang i386 buildonly-randconfig-004-20240120 clang i386 buildonly-randconfig-005-20240120 clang i386 buildonly-randconfig-006-20240120 clang i386defconfig gcc i386 randconfig-001-20240120 clang i386 randconfig-002-20240120 clang i386 randconfig-003-20240120 clang i386 randconfig-004-20240120 clang i386 randconfig-005-20240120 clang i386 randconfig-006-20240120 clang i386 randconfig-011-20240120 gcc i386 randconfig-012-20240120 gcc i386 randconfig-013-20240120 gcc i386 randconfig-014-20240120 gcc i386 randconfig-015-20240120 gcc i386 randconfig-016-20240120 gcc loongarchallmodconfig gcc loongarch allnoconfig gcc loongarch defconfig gcc loongarch randconfig-001-20240120 gcc loongarch randconfig-002-20240120 gcc m68k allmodconfig gcc m68k allnoconfig gcc m68k allyesconfig gcc m68kdefconfig gcc microblaze allmodconfig gcc microblaze allyesconfig gcc mips allyesconfig gcc nios2allmodconfig gcc nios2allyesconfig gcc nios2 randconfig-001-20240120 gcc nios2 randconfig-002-20240120 gcc pariscrandconfig-001-20240120 gcc pariscrandconfig-002-20240120 gcc powerpc randconfig-001-20240120 clang powerpc randconfig-002-20240120 clang powerpc randconfig-003-20240120 clang powerpc64 randconfig-001-20240120 clang powerpc64 randconfig-002-20240120 clang powerpc64 randconfig-003-20240120 clang riscv randconfig-001-20240120 clang riscv randconfig-002-20240120 clang s390 allmodconfig gcc s390 allyesconfig gcc s390 randconfig-001-20240120 gcc s390 randconfig-002-20240120 gcc sh allmodconfig gcc sh allyesconfig gcc shrandconfig-001-20240120 gcc shrandconfig-002-20240120 gcc sparc64 randconfig-001-20240120 gcc sparc64 randconfig-002-20240120 gcc umrandconfig-001-20240120 clang um
[Intel-wired-lan] [tnguy-next-queue:dev-queue] BUILD SUCCESS 5db323adbcf17274a6e72abd7010af891379e1d8
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git dev-queue branch HEAD: 5db323adbcf17274a6e72abd7010af891379e1d8 idpf: avoid compiler padding in virtchnl2_ptype struct elapsed time: 1947m configs tested: 96 configs skipped: 0 The following configs have been built successfully. More configs may be tested in the coming days. tested configs: alpha allnoconfig gcc alpha defconfig gcc arc allnoconfig gcc arc defconfig gcc arc randconfig-001-20240121 gcc arc randconfig-002-20240121 gcc arm allnoconfig gcc arm defconfig clang arm randconfig-001-20240121 gcc arm randconfig-002-20240121 gcc arm randconfig-003-20240121 gcc arm randconfig-004-20240121 gcc arm64 allnoconfig gcc arm64 defconfig gcc arm64 randconfig-001-20240121 gcc arm64 randconfig-002-20240121 gcc arm64 randconfig-003-20240121 gcc arm64 randconfig-004-20240121 gcc csky allnoconfig gcc cskydefconfig gcc csky randconfig-001-20240121 gcc csky randconfig-002-20240121 gcc hexagon allnoconfig clang hexagon defconfig clang hexagon randconfig-001-20240121 clang hexagon randconfig-002-20240121 clang i386 allmodconfig clang i386 allnoconfig clang i386 buildonly-randconfig-001-20240120 clang i386 buildonly-randconfig-002-20240120 clang i386 buildonly-randconfig-003-20240120 clang i386 buildonly-randconfig-004-20240120 clang i386 buildonly-randconfig-005-20240120 clang i386 buildonly-randconfig-006-20240120 clang i386 randconfig-001-20240120 clang i386 randconfig-002-20240120 clang i386 randconfig-003-20240120 clang i386 randconfig-004-20240120 clang i386 randconfig-005-20240120 clang i386 randconfig-006-20240120 clang i386 randconfig-011-20240120 gcc i386 randconfig-012-20240120 gcc i386 randconfig-013-20240120 gcc i386 randconfig-014-20240120 gcc i386 randconfig-015-20240120 gcc i386 randconfig-016-20240120 gcc loongarchallmodconfig gcc loongarch allnoconfig gcc loongarch randconfig-001-20240121 gcc loongarch randconfig-002-20240121 gcc m68k allmodconfig gcc m68k allnoconfig gcc m68k allyesconfig gcc microblaze allmodconfig gcc microblaze allyesconfig gcc mips allyesconfig gcc nios2allmodconfig gcc nios2 randconfig-001-20240121 gcc nios2 randconfig-002-20240121 gcc pariscrandconfig-001-20240121 gcc pariscrandconfig-002-20240121 gcc powerpc randconfig-001-20240121 gcc powerpc randconfig-002-20240121 gcc powerpc randconfig-003-20240121 gcc powerpc64 randconfig-001-20240121 gcc powerpc64 randconfig-002-20240121 gcc powerpc64 randconfig-003-20240121 gcc riscv randconfig-001-20240121 gcc riscv randconfig-002-20240121 gcc s390 randconfig-001-20240121 clang s390 randconfig-002-20240121 clang shrandconfig-001-20240121 gcc shrandconfig-002-20240121 gcc sparc64 randconfig-001-20240121 gcc sparc64 randconfig-002-20240121 gcc umrandconfig-001-20240121 gcc umrandconfig-002-20240121 gcc x86_64allnoconfig gcc x86_64 allyesconfig clang x86_64 buildonly-randconfig-001-20240121 gcc x86_64 buildonly-randconfig-002-20240121 gcc x86_64 buildonly-randconfig-003-20240121 gcc x86_64 buildonly-randconfig-004-20240121 gcc x86_64 buildonly-randconfig-005-20240121 gcc x86_64 buildonly-randconfig-006-20240121 gcc x86_64