This patchset aims to fix a signedness bug in function
vsc85xx_downshift_get() and a memory leak in function
vsc8574_config_pre_init().
Changes in v2:
- Add Quentin's Review-by to commit log.
- Jump to out label so all functions in the driver exit with the PHY
set to access the standard page. Thanks to Quentin Schulz for
pointing this out.
Thanks
Gustavo A. R. Silva (2):
net: phy: mscc: fix signedness bug in vsc85xx_downshift_get
net: phy: mscc: fix memory leak in vsc8574_config_pre_init
drivers/net/phy/mscc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--
2.7.4
In case memory resources for *fw* were successfully allocated,
release them before return.
Addresses-Coverity-ID: 1473968 ("Resource leak")
Fixes: 00d70d8e0e78 ("net: phy: mscc: add support for VSC8574 PHY")
Signed-off-by: Gustavo A. R. Silva <[email protected]>
---
Changes in v2:
- Jump to out label so all functions in the driver exit with the PHY
set to access the standard page. Thanks to Quentin Schulz for
pointing this out.
drivers/net/phy/mscc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c
index bff56c3..a2e59f4 100644
--- a/drivers/net/phy/mscc.c
+++ b/drivers/net/phy/mscc.c
@@ -1292,7 +1292,7 @@ static int vsc8574_config_pre_init(struct phy_device *phydev)
dev_err(dev,
"%s: failed to assert reset of micro\n",
__func__);
- return ret;
+ goto out;
}
}
} else {
--
2.7.4
Currently, the error handling for the call to function
phy_read_paged() doesn't work because *reg_val* is of
type u16 (16 bits, unsigned), which makes it impossible
for it to hold a value less than 0.
Fix this by changing the type of variable *reg_val* to int.
Addresses-Coverity-ID: 1473970 ("Unsigned compared against 0")
Fixes: 6a0bfbbe20b0 ("net: phy: mscc: migrate to phy_select/restore_page functions")
Reviewed-by: Quentin Schulz <[email protected]>
Signed-off-by: Gustavo A. R. Silva <[email protected]>
---
Changes in v2:
- Add Quentin's Reviewed-by to the commit log.
drivers/net/phy/mscc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c
index bffe077..bff56c3 100644
--- a/drivers/net/phy/mscc.c
+++ b/drivers/net/phy/mscc.c
@@ -522,7 +522,7 @@ static int vsc85xx_mdix_set(struct phy_device *phydev, u8 mdix)
static int vsc85xx_downshift_get(struct phy_device *phydev, u8 *count)
{
- u16 reg_val;
+ int reg_val;
reg_val = phy_read_paged(phydev, MSCC_PHY_PAGE_EXTENDED,
MSCC_PHY_ACTIPHY_CNTL);
--
2.7.4
Hi Gustavo,
On Wed, Oct 10, 2018 at 10:31:39AM +0200, Gustavo A. R. Silva wrote:
> In case memory resources for *fw* were successfully allocated,
> release them before return.
>
> Addresses-Coverity-ID: 1473968 ("Resource leak")
> Fixes: 00d70d8e0e78 ("net: phy: mscc: add support for VSC8574 PHY")
Reviewed-by: Quentin Schulz <[email protected]>
Thanks!
Quentin
Hi,
On 10/10/18 10:34 AM, Quentin Schulz wrote:
> Hi Gustavo,
>
> On Wed, Oct 10, 2018 at 10:31:39AM +0200, Gustavo A. R. Silva wrote:
>> In case memory resources for *fw* were successfully allocated,
>> release them before return.
>>
>> Addresses-Coverity-ID: 1473968 ("Resource leak")
>> Fixes: 00d70d8e0e78 ("net: phy: mscc: add support for VSC8574 PHY")
>
> Reviewed-by: Quentin Schulz <[email protected]>
>
Friendly ping. Dave, can you take this?
Thanks!
--
Gustavo
Hi,
On 10/10/18 10:30 AM, Gustavo A. R. Silva wrote:
> Currently, the error handling for the call to function
> phy_read_paged() doesn't work because *reg_val* is of
> type u16 (16 bits, unsigned), which makes it impossible
> for it to hold a value less than 0.
>
> Fix this by changing the type of variable *reg_val* to int.
>
> Addresses-Coverity-ID: 1473970 ("Unsigned compared against 0")
> Fixes: 6a0bfbbe20b0 ("net: phy: mscc: migrate to phy_select/restore_page functions")
> Reviewed-by: Quentin Schulz <[email protected]>
> Signed-off-by: Gustavo A. R. Silva <[email protected]>
> ---
> Changes in v2:
> - Add Quentin's Reviewed-by to the commit log.
>
> drivers/net/phy/mscc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c
> index bffe077..bff56c3 100644
> --- a/drivers/net/phy/mscc.c
> +++ b/drivers/net/phy/mscc.c
> @@ -522,7 +522,7 @@ static int vsc85xx_mdix_set(struct phy_device *phydev, u8 mdix)
>
> static int vsc85xx_downshift_get(struct phy_device *phydev, u8 *count)
> {
> - u16 reg_val;
> + int reg_val;
>
> reg_val = phy_read_paged(phydev, MSCC_PHY_PAGE_EXTENDED,
> MSCC_PHY_ACTIPHY_CNTL);
>
Friendly ping. Dave, can you take this?
Thanks!
--
Gustavo
From: "Gustavo A. R. Silva" <[email protected]>
Date: Tue, 16 Oct 2018 10:49:36 +0200
> Hi,
>
> On 10/10/18 10:34 AM, Quentin Schulz wrote:
>> Hi Gustavo,
>>
>> On Wed, Oct 10, 2018 at 10:31:39AM +0200, Gustavo A. R. Silva wrote:
>>> In case memory resources for *fw* were successfully allocated,
>>> release them before return.
>>>
>>> Addresses-Coverity-ID: 1473968 ("Resource leak")
>>> Fixes: 00d70d8e0e78 ("net: phy: mscc: add support for VSC8574 PHY")
>>
>> Reviewed-by: Quentin Schulz <[email protected]>
>>
>
> Friendly ping. Dave, can you take this?
It needs to be posted properly to netdev, just like all networking
patches do.
On 10/16/18 6:54 PM, David Miller wrote:
>>
>> Friendly ping. Dave, can you take this?
>
> It needs to be posted properly to netdev, just like all networking
> patches do.
>
mmh... I don't know how I missed it. :/
OK. I'll send the series to netdev.
Thanks!
--
Gustavo