skb->tstamp == 0.00000 ?

2 messages, 2 authors, 2011-11-20 · open the first message on its own page

skb->tstamp == 0.00000 ?

From: Felipe Dias <hidden>
Date: 2011-11-19 21:18:52

Hi..

Please let me know if this isnt right list to this kind of question.

I'm registering a new protocol handler with dev_add_pack. I would like
to know only the difference between timestamp on skb->tstamp and the
time of reception by my module.

So I do:
----
struct timeval time_skb, time_module;
do_gettimeofday(&time_module):
skb_get_timestamp(skb, &time_skb);
---

And time_skb.tv_sec and time_skb.tv_usec are equal to 0;

I'm doing some wrong ?

Best regards,
Felipe

Re: skb->tstamp == 0.00000 ?

From: Oliver Hartkopp <socketcan@hartkopp.net>
Date: 2011-11-20 17:15:35

On 19.11.2011 22:18, Felipe Dias wrote:
Hi..

Please let me know if this isnt right list to this kind of question.

I'm registering a new protocol handler with dev_add_pack. I would like
to know only the difference between timestamp on skb->tstamp and the
time of reception by my module.

Hello Felipe,

tstamp is a ktime_t type, which is a timestamp in nanosecs

http://lxr.linux.no/#linux+v3.1.1/include/linux/ktime.h#L28

The value in the skbuff

http://lxr.linux.no/#linux+v3.1.1/include/linux/skbuff.h#L347

is usually set at PDU reception time -> see netif_rx().

http://lxr.linux.no/#linux+v3.1.1/net/core/dev.c#L2879

where net_timestamp_check(skb) is executed which usually sets the timestamp
when timestamping is activated.

So when your netdevice creates a proper skbuff (e.g. using skb_alloc) the
timestamp is set to zero and therefore set to the receive time in
net_timestamp_check().

So I do:
----
struct timeval time_skb, time_module;
do_gettimeofday(&time_module):
skb_get_timestamp(skb, &time_skb);
---

And time_skb.tv_sec and time_skb.tv_usec are equal to 0;

I'm doing some wrong ?

Hm, i don't see, why you convert ktime_t to timeval.

You better work on skb->tstamp with the ktime functions directly, e.g. with
skb_get_ktime().

I hope this gives you a bit more insight in skb->tstamp - even if i don't know
your problem in detail %-)

Regards,
Oliver
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help