Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db91b724 authored by Alexander Duyck's avatar Alexander Duyck Committed by David S. Miller
Browse files

dp83640: Make use of skb_queue_purge instead of reimplementing the code



This change makes it so that dp83640_remove can use skb_queue_purge
instead of looping through itself to flush any entries out of the queue.

Signed-off-by: default avatarAlexander Duyck <alexander.h.duyck@intel.com>
Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent eb84d6b6
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -1136,7 +1136,6 @@ static void dp83640_remove(struct phy_device *phydev)
	struct dp83640_clock *clock;
	struct list_head *this, *next;
	struct dp83640_private *tmp, *dp83640 = phydev->priv;
	struct sk_buff *skb;

	if (phydev->addr == BROADCAST_ADDR)
		return;
@@ -1144,11 +1143,8 @@ static void dp83640_remove(struct phy_device *phydev)
	enable_status_frames(phydev, false);
	cancel_work_sync(&dp83640->ts_work);

	while ((skb = skb_dequeue(&dp83640->rx_queue)) != NULL)
		kfree_skb(skb);

	while ((skb = skb_dequeue(&dp83640->tx_queue)) != NULL)
		kfree_skb(skb);
	skb_queue_purge(&dp83640->rx_queue);
	skb_queue_purge(&dp83640->tx_queue);

	clock = dp83640_clock_get(dp83640->clock);