The code seems to assume a null is returned when the list is empty
from first_sec_slave() to break the loop which is incorrect. Fix the
code by using list_empty().
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
{
struct gbe_slave *slave;
{
struct gbe_slave *slave;
+ while (!list_empty(&gbe_dev->secondary_slaves)) {
slave = first_sec_slave(gbe_dev);
slave = first_sec_slave(gbe_dev);
if (slave->phy)
phy_disconnect(slave->phy);
list_del(&slave->slave_list);
if (slave->phy)
phy_disconnect(slave->phy);
list_del(&slave->slave_list);