Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
An ipvlan bug fix in 'net' conflicted with the abstraction away of the IPV6 specific support in 'net-next'. Similarly, a bug fix for mlx5 in 'net' conflicted with the flow action conversion in 'net-next'. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -885,14 +885,14 @@ static void decode_txts(struct dp83640_private *dp83640,
|
||||
struct phy_txts *phy_txts)
|
||||
{
|
||||
struct skb_shared_hwtstamps shhwtstamps;
|
||||
struct dp83640_skb_info *skb_info;
|
||||
struct sk_buff *skb;
|
||||
u64 ns;
|
||||
u8 overflow;
|
||||
u64 ns;
|
||||
|
||||
/* We must already have the skb that triggered this. */
|
||||
|
||||
again:
|
||||
skb = skb_dequeue(&dp83640->tx_queue);
|
||||
|
||||
if (!skb) {
|
||||
pr_debug("have timestamp but tx_queue empty\n");
|
||||
return;
|
||||
@@ -907,6 +907,11 @@ static void decode_txts(struct dp83640_private *dp83640,
|
||||
}
|
||||
return;
|
||||
}
|
||||
skb_info = (struct dp83640_skb_info *)skb->cb;
|
||||
if (time_after(jiffies, skb_info->tmo)) {
|
||||
kfree_skb(skb);
|
||||
goto again;
|
||||
}
|
||||
|
||||
ns = phy2txts(phy_txts);
|
||||
memset(&shhwtstamps, 0, sizeof(shhwtstamps));
|
||||
@@ -1459,6 +1464,7 @@ static bool dp83640_rxtstamp(struct phy_device *phydev,
|
||||
static void dp83640_txtstamp(struct phy_device *phydev,
|
||||
struct sk_buff *skb, int type)
|
||||
{
|
||||
struct dp83640_skb_info *skb_info = (struct dp83640_skb_info *)skb->cb;
|
||||
struct dp83640_private *dp83640 = phydev->priv;
|
||||
|
||||
switch (dp83640->hwts_tx_en) {
|
||||
@@ -1471,6 +1477,7 @@ static void dp83640_txtstamp(struct phy_device *phydev,
|
||||
/* fall through */
|
||||
case HWTSTAMP_TX_ON:
|
||||
skb_shinfo(skb)->tx_flags |= SKBTX_IN_PROGRESS;
|
||||
skb_info->tmo = jiffies + SKB_TIMESTAMP_TIMEOUT;
|
||||
skb_queue_tail(&dp83640->tx_queue, skb);
|
||||
break;
|
||||
|
||||
|
Reference in New Issue
Block a user