From: "Marcus D. Leech" <mleech@ripnet.com>
To: netdev@vger.kernel.org
Subject: Possible bug: SO_TIMESTAMPING 2.6.30+
Date: Mon, 09 Nov 2009 19:40:30 -0500 [thread overview]
Message-ID: <4AF8B67E.3030604@ripnet.com> (raw)
I've searched both the LKML archives, and the patchsets for kernels
since 2.6.30 to see if
this problem has been observed.
I have an Ethernet driver that supports hardware timestamping, and it
has been working
swimmingly well for several months using the SO_TIMESTAMPING
infrastructure that
Patrick Ohly put in the kernel starting around 2.6.30.
What I've discovered, that really causes me to pull my hair out, is that
packets that are
either AF_INET6 or AF_PACKET, *are not* getting Tx (transmit)
timestamps. Diving into
the driver, I've discovered that the sk_buffs associated with these
packets *dont* have
the appropriate skb_tx state in the skb:
shtx = skb_tx(skb);
if (shtx->hardware)
{
/* Do the timestamping thing */
}
Now the puzzling thing is that the socket that originates these packets
has SO_TIMESTAMPING
turned on, and was created as an AF_INET6 socket, but carries both V4
and V6 traffic. The
V4 traffic skbs have shtx->hardware true appropriately, but the
V6 traffic doesn't. Using
Wireshark, I can clearly see the V6 packets leaving the interface, so
it's not like they're
getting routed somewhere else, and debugging in the driver *clearly*
shows that V4 packets
have shtx->hardware, while the V6 ones (from the SAME SOCKET) do not.
I know that Patrick Ohly has essentially moved on from doing the
SO_TIMESTAMPING stuff, so
who's maintaining it now?
When I look at the V6 udp code, it seems to call the same udp_sendmsg()
function that V4
uses, which appears to support Tx timestamping the way it should.
Any clues anyone?
next reply other threads:[~2009-11-10 0:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-10 0:40 Marcus D. Leech [this message]
2009-11-10 8:12 ` Possible bug: SO_TIMESTAMPING 2.6.30+ Christopher Zimmermann
2009-11-10 8:44 ` Eric Dumazet
2009-11-10 22:03 ` Christopher Zimmermann
2009-11-11 0:13 ` Marcus D. Leech
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AF8B67E.3030604@ripnet.com \
--to=mleech@ripnet.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).