lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F688F01.40604@openwrt.org>
Date:	Tue, 20 Mar 2012 15:06:57 +0100
From:	Florian Fainelli <florian@...nwrt.org>
To:	Dong Aisheng <dongas86@...il.com>
CC:	Shawn Guo <shawn.guo@...aro.org>,
	Dong Aisheng <b29396@...escale.com>, netdev@...r.kernel.org,
	davem@...emloft.net, linux-kernel@...r.kernel.org,
	linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 1/1] net: phylib: remove the length limitation of mii
 bus id

Hi,

Le 03/20/12 11:53, Dong Aisheng a écrit :
> On Tue, Mar 20, 2012 at 1:32 AM, Shawn Guo<shawn.guo@...aro.org>  wrote:
>> On 20 March 2012 12:23, Dong Aisheng<b29396@...escale.com>  wrote:
>>> From: Dong Aisheng<dong.aisheng@...aro.org>
>>>
>>> When convert to dt, the length of old mii bus id (17 bytes) is not
>>> sufficent to use.
>>> For example, the bus id could be 800f0000.ethernet-1:00 in DT.
>>>
>>> This patch removes the bus id length limitation by changing the
>>> bus id to a const char pionter and user could dynamically set the
>>> bus id via kasprintf function call.
>>>
>>> Since then no users use MII_BUS_ID_SIZE any more, just remove it.
>>>
>>> Signed-off-by: Dong Aisheng<dong.aisheng@...aro.org>
>>> ---
>>> The simplest way may just change MII_BUS_ID_SIZE to a more bigger size,
>>> but i'm not sure that's gonna be accepted.
>>
>> The simplest fix has been applied on -next tree as below.
>>
> Oh, i missed it, seems my patch covers that change.
> But that patch only fixed wrong phy_name buffer length issue.
> My patch is totally remove the length limitation of bus id and phy_name
> or the bus id name will be truncated if it's longer than MII_BUS_ID_SIZE
> which is not a comfortable limitation.

Then just increase the bus id size locally for your driver. Drivers that 
can live with a static allocation are better of using it.

Your patch completely missed testing the return value of kasprintf(), 
and its return value can be NULL, please fix this at least.

>
>> commit a7ed07d51c8abdb407be454c6cb6cfad613759d9
>> Author: Richard Zhao<richard.zhao@...aro.org>
>> Date:   Sun Jan 29 22:08:12 2012 +0000
>>
>>     net: fec: correct phy_name buffer length when init phy_name
>>
>>     Fix the bug that we got wrong phy_name on imx6q sabrelite board.
>>     snprintf used wrong length of phy_name.
>>     phy_name length is MII_BUS_ID_SIZE + 3 rather not MII_BUS_ID_SIZE.
>>     I change it to sizeof(phy_name).
>>
>>     Signed-off-by: Richard Zhao<richard.zhao@...aro.org>
>>     Acked-by: Shawn Guo<shawn.guo@...aro.org>
>>     Acked-by: Florian Fainelli<florian@...nwrt.org>
>>     Signed-off-by: David S. Miller<davem@...emloft.net>
>>
>> diff --git a/drivers/net/ethernet/freescale/fec.c
>> b/drivers/net/ethernet/freescale/fec.c
>> index 7b25e9c..1c7aad8 100644
>> --- a/drivers/net/ethernet/freescale/fec.c
>> +++ b/drivers/net/ethernet/freescale/fec.c
>> @@ -990,7 +990,7 @@ static int fec_enet_mii_probe(struct net_device *ndev)
>>                 phy_id = 0;
>>         }
>>
>> -       snprintf(phy_name, MII_BUS_ID_SIZE, PHY_ID_FMT, mdio_bus_id, phy_id);
>> +       snprintf(phy_name, sizeof(phy_name), PHY_ID_FMT, mdio_bus_id, phy_id);
>>         phy_dev = phy_connect(ndev, phy_name,&fec_enet_adjust_link, 0,
>>                               fep->phy_interface);
>>         if (IS_ERR(phy_dev)) {
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ