dp83640: Prune rx timestamp list before reading from it
The list of rx timestamps are currently only pruned of old entries when a new entry is inserted. If no new entries are added, old timestamps may survive beyond their lifetime, possible causing them to be attached to packets with the same sequence number after a rollover. Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4b063258ab
commit
ccf6ee9a69
1 changed files with 1 additions and 0 deletions
|
@ -1398,6 +1398,7 @@ static bool dp83640_rxtstamp(struct phy_device *phydev,
|
|||
return false;
|
||||
|
||||
spin_lock_irqsave(&dp83640->rx_lock, flags);
|
||||
prune_rx_ts(dp83640);
|
||||
list_for_each_safe(this, next, &dp83640->rxts) {
|
||||
rxts = list_entry(this, struct rxts, list);
|
||||
if (match(skb, type, rxts)) {
|
||||
|
|
Loading…
Add table
Reference in a new issue