Message ID | 20210521195019.2078661-1-trix@redhat.com (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | igc: change default return of igc_read_phy_reg() | expand |
Context | Check | Description |
---|---|---|
netdev/cover_letter | success | Link |
netdev/fixes_present | success | Link |
netdev/patch_count | success | Link |
netdev/tree_selection | success | Guessed tree name to be net-next |
netdev/subject_prefix | warning | Target tree name not specified in the subject |
netdev/cc_maintainers | success | CCed 7 of 7 maintainers |
netdev/source_inline | success | Was 0 now: 0 |
netdev/verify_signedoff | success | Link |
netdev/module_param | success | Was 0 now: 0 |
netdev/build_32bit | success | Errors and warnings before: 7 this patch: 7 |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/verify_fixes | success | Link |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 8 lines checked |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 7 this patch: 7 |
netdev/header_inline | success | Link |
On 5/21/2021 22:50, trix@redhat.com wrote: > From: Tom Rix <trix@redhat.com> > > Static analysis reports this problem > > igc_main.c:4944:20: warning: The left operand of '&' > is a garbage value > if (!(phy_data & SR_1000T_REMOTE_RX_STATUS) && > ~~~~~~~~ ^ Tom, thanks for this patch. I believe the same static analysis problem should be with the 'igb_read_phy_reg' method: https://elixir.bootlin.com/linux/v5.13-rc1/source/drivers/net/ethernet/intel/igb/igb.h#L769 > > pyy_data is set by the call to igc_read_phy_reg() only if %s/pyy_data/phy_data/gc (typo) > there is a read_reg() op, else it is unset and a 0 is > returned. Change the return to -EOPNOTSUPP. > > Fixes: 208983f099d9 ("igc: Add watchdog") > Signed-off-by: Tom Rix <trix@redhat.com> > --- > drivers/net/ethernet/intel/igc/igc.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/intel/igc/igc.h b/drivers/net/ethernet/intel/igc/igc.h > index b6d3277c6f520..71100ee7afbee 100644 > --- a/drivers/net/ethernet/intel/igc/igc.h > +++ b/drivers/net/ethernet/intel/igc/igc.h > @@ -577,7 +577,7 @@ static inline s32 igc_read_phy_reg(struct igc_hw *hw, u32 offset, u16 *data) > if (hw->phy.ops.read_reg) > return hw->phy.ops.read_reg(hw, offset, data); > > - return 0; > + return -EOPNOTSUPP; > } > > void igc_reinit_locked(struct igc_adapter *); > Thanks, Sasha
On 5/21/2021 22:50, trix@redhat.com wrote: > From: Tom Rix <trix@redhat.com> > > Static analysis reports this problem > > igc_main.c:4944:20: warning: The left operand of '&' > is a garbage value > if (!(phy_data & SR_1000T_REMOTE_RX_STATUS) && > ~~~~~~~~ ^ > > pyy_data is set by the call to igc_read_phy_reg() only if > there is a read_reg() op, else it is unset and a 0 is > returned. Change the return to -EOPNOTSUPP. > > Fixes: 208983f099d9 ("igc: Add watchdog") > Signed-off-by: Tom Rix <trix@redhat.com> > --- > drivers/net/ethernet/intel/igc/igc.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
diff --git a/drivers/net/ethernet/intel/igc/igc.h b/drivers/net/ethernet/intel/igc/igc.h index b6d3277c6f520..71100ee7afbee 100644 --- a/drivers/net/ethernet/intel/igc/igc.h +++ b/drivers/net/ethernet/intel/igc/igc.h @@ -577,7 +577,7 @@ static inline s32 igc_read_phy_reg(struct igc_hw *hw, u32 offset, u16 *data) if (hw->phy.ops.read_reg) return hw->phy.ops.read_reg(hw, offset, data); - return 0; + return -EOPNOTSUPP; } void igc_reinit_locked(struct igc_adapter *);