[PATCH net-next 2/3] net: phy: Change the array size to 32 for device_ids

From: Vicentiu Galanopulo
Date: Tue Apr 17 2018 - 05:05:04 EST


In the context of enabling the discovery of the PHYs
which have the C45 MDIO address space in a non-standard
address: num_ids in get_phy_c45_ids, has the
value 8 (ARRAY_SIZE(c45_ids->device_ids)), but the
u32 *devs can store 32 devices in the bitfield.

If a device is stored in *devs, in bits 32 to 9
(bit counting in lookup loop starts from 1), it will
not be found.

Signed-off-by: Vicentiu Galanopulo <vicentiu.galanopulo@xxxxxxx>
---
include/linux/phy.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/phy.h b/include/linux/phy.h
index f0b5870..26aa320 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -360,7 +360,7 @@ enum phy_state {
*/
struct phy_c45_device_ids {
u32 devices_in_package;
- u32 device_ids[8];
+ u32 device_ids[32];
};

/* phy_device: An instance of a PHY
--
2.7.4