}
}
-void ipoib_mcast_remove_list(struct net_device *dev, struct list_head *remove_list)
+void ipoib_mcast_remove_list(struct list_head *remove_list)
{
struct ipoib_mcast *mcast, *tmcast;
list_for_each_entry_safe(mcast, tmcast, remove_list, list) {
- ipoib_mcast_leave(dev, mcast);
+ ipoib_mcast_leave(mcast->dev, mcast);
ipoib_mcast_free(mcast);
}
}
if (test_bit(IPOIB_MCAST_FLAG_BUSY, &mcast->flags))
wait_for_completion(&mcast->done);
- ipoib_mcast_remove_list(dev, &remove_list);
+ ipoib_mcast_remove_list(&remove_list);
}
static int ipoib_mcast_addr_is_valid(const u8 *addr, const u8 *broadcast)
if (test_bit(IPOIB_MCAST_FLAG_BUSY, &mcast->flags))
wait_for_completion(&mcast->done);
- ipoib_mcast_remove_list(mcast->dev, &remove_list);
+ ipoib_mcast_remove_list(&remove_list);
/*
* Double check that we are still up