On Fri, Feb 01, 2019 at 10:09:18PM +0100, Sebastian Andrzej Siewior wrote: > During sendmsg() a cloned skb is saved via dp83640_txtstamp() in > ->tx_queue. After the NIC sends this packet, the PHY will reply with a > timestamp for that TX packet. If the cable is pulled at the right time I > don't see that packet. It might gets flushed as part of queue shutdown > on NIC's side. > Once the link is up again then after the next sendmsg() we enqueue > another skb in dp83640_txtstamp() and have two on the list. Then the PHY > will send a reply and decode_txts() attaches it to the first skb on the > list. > No crash occurs since refcounting works but we are one packet behind. > linuxptp/ptp4l usually closes the socket and opens a new one (in such a > timeout case) so those "stale" replies never get there. However it does > not resume normal operation anymore. > > Purge old skbs in decode_txts(). > > Cc: sta...@vger.kernel.org > Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de> > Reviewed-by: Kurt Kanzenbach <k...@linutronix.de>
Hi Sebastian netdev does not use the Cc: sta...@vger.kernel.org. https://www.kernel.org/doc/Documentation/networking/netdev-FAQ.txt Please include a Fixes: tag, and a subject of [PATCH net] ... Thanks Andrew