* [PATCH net-next 0/2] fix signedness bug and memory leak in mscc driver @ 2018-10-09 19:38 Gustavo A. R. Silva 2018-10-09 19:38 ` [PATCH net-next 1/2] net: phy: mscc: fix signedness bug in vsc85xx_downshift_get Gustavo A. R. Silva 2018-10-09 19:39 ` [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init Gustavo A. R. Silva 0 siblings, 2 replies; 6+ messages in thread From: Gustavo A. R. Silva @ 2018-10-09 19:38 UTC (permalink / raw) To: linux-kernel Cc: Andrew Lunn, Florian Fainelli, David S. Miller, Quentin Schulz, Gustavo A. R. Silva This patchset aims to fix a signedness bug in function vsc85xx_downshift_get() and a memory leak in function vsc8574_config_pre_init(). 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 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) -- 2.7.4 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH net-next 1/2] net: phy: mscc: fix signedness bug in vsc85xx_downshift_get 2018-10-09 19:38 [PATCH net-next 0/2] fix signedness bug and memory leak in mscc driver Gustavo A. R. Silva @ 2018-10-09 19:38 ` Gustavo A. R. Silva 2018-10-10 6:56 ` Quentin Schulz 2018-10-09 19:39 ` [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init Gustavo A. R. Silva 1 sibling, 1 reply; 6+ messages in thread From: Gustavo A. R. Silva @ 2018-10-09 19:38 UTC (permalink / raw) To: linux-kernel Cc: Andrew Lunn, Florian Fainelli, David S. Miller, Quentin Schulz, Gustavo A. R. Silva 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") Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> --- 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 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH net-next 1/2] net: phy: mscc: fix signedness bug in vsc85xx_downshift_get 2018-10-09 19:38 ` [PATCH net-next 1/2] net: phy: mscc: fix signedness bug in vsc85xx_downshift_get Gustavo A. R. Silva @ 2018-10-10 6:56 ` Quentin Schulz 0 siblings, 0 replies; 6+ messages in thread From: Quentin Schulz @ 2018-10-10 6:56 UTC (permalink / raw) To: Gustavo A. R. Silva Cc: linux-kernel, Andrew Lunn, Florian Fainelli, David S. Miller [-- Attachment #1: Type: text/plain, Size: 673 bytes --] Hi Gustavo, On Tue, Oct 09, 2018 at 09:38:33PM +0200, 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. > Ah, rookie mistake! I should have run Coccinelle on the patches. > 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 <quentin.schulz@bootlin.com> Thanks! Quentin [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init 2018-10-09 19:38 [PATCH net-next 0/2] fix signedness bug and memory leak in mscc driver Gustavo A. R. Silva 2018-10-09 19:38 ` [PATCH net-next 1/2] net: phy: mscc: fix signedness bug in vsc85xx_downshift_get Gustavo A. R. Silva @ 2018-10-09 19:39 ` Gustavo A. R. Silva 2018-10-10 6:49 ` Quentin Schulz 1 sibling, 1 reply; 6+ messages in thread From: Gustavo A. R. Silva @ 2018-10-09 19:39 UTC (permalink / raw) To: linux-kernel Cc: Andrew Lunn, Florian Fainelli, David S. Miller, Quentin Schulz, Gustavo A. R. Silva 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 <gustavo@embeddedor.com> --- drivers/net/phy/mscc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c index bff56c3..af9fb2d 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 release_fw; } } } else { @@ -1338,7 +1338,7 @@ static int vsc8574_config_pre_init(struct phy_device *phydev) out: phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD); - +release_fw: release_firmware(fw); return ret; -- 2.7.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init 2018-10-09 19:39 ` [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init Gustavo A. R. Silva @ 2018-10-10 6:49 ` Quentin Schulz 2018-10-10 8:27 ` Gustavo A. R. Silva 0 siblings, 1 reply; 6+ messages in thread From: Quentin Schulz @ 2018-10-10 6:49 UTC (permalink / raw) To: Gustavo A. R. Silva Cc: linux-kernel, Andrew Lunn, Florian Fainelli, David S. Miller [-- Attachment #1: Type: text/plain, Size: 1271 bytes --] Hi Gustavo, On Tue, Oct 09, 2018 at 09:39:53PM +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") > Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> > --- > drivers/net/phy/mscc.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c > index bff56c3..af9fb2d 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 release_fw; > } > } > } else { > @@ -1338,7 +1338,7 @@ static int vsc8574_config_pre_init(struct phy_device *phydev) > > out: > phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD); > - > +release_fw: > release_firmware(fw); You can reuse the out goto label instead, I would like all functions in the driver to exit with the PHY set to access the standard page. Thanks, Quentin [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init 2018-10-10 6:49 ` Quentin Schulz @ 2018-10-10 8:27 ` Gustavo A. R. Silva 0 siblings, 0 replies; 6+ messages in thread From: Gustavo A. R. Silva @ 2018-10-10 8:27 UTC (permalink / raw) To: Quentin Schulz Cc: linux-kernel, Andrew Lunn, Florian Fainelli, David S. Miller Hey Quentin, On 10/10/18 8:49 AM, Quentin Schulz wrote: >> >> out: >> phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD); >> - >> +release_fw: >> release_firmware(fw); > > You can reuse the out goto label instead, I would like all functions in > the driver to exit with the PHY set to access the standard page. > Oh okay. I've got it. I'll send v2 shortly. Thanks for the feedback. -- Gustavo ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-10-10 8:27 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-10-09 19:38 [PATCH net-next 0/2] fix signedness bug and memory leak in mscc driver Gustavo A. R. Silva 2018-10-09 19:38 ` [PATCH net-next 1/2] net: phy: mscc: fix signedness bug in vsc85xx_downshift_get Gustavo A. R. Silva 2018-10-10 6:56 ` Quentin Schulz 2018-10-09 19:39 ` [PATCH net-next 2/2] net: phy: mscc: fix memory leak in vsc8574_config_pre_init Gustavo A. R. Silva 2018-10-10 6:49 ` Quentin Schulz 2018-10-10 8:27 ` Gustavo A. R. Silva
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).