From: Eric Dumazet <eric.dumazet@gmail.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [RFC v2 net-next 02/10] net: ipv4: raw: Hook into time based transmission.
Date: Wed, 17 Jan 2018 16:28:14 -0800 [thread overview]
Message-ID: <1516235294.3606.18.camel@gmail.com> (raw)
In-Reply-To: <20180117230621.26074-3-jesus.sanchez-palencia@intel.com>
On Wed, 2018-01-17 at 15:06 -0800, Jesus Sanchez-Palencia wrote:
> From: Richard Cochran <rcochran@linutronix.de>
>
> For raw packets, copy the desired future transmit time from the CMSG
> cookie into the skb.
>
> Signed-off-by: Richard Cochran <rcochran@linutronix.de>
> Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
> ---
> net/ipv4/raw.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
> index 136544b36a46..e37ea8ab6a78 100644
> --- a/net/ipv4/raw.c
> +++ b/net/ipv4/raw.c
> @@ -381,6 +381,7 @@ static int raw_send_hdrinc(struct sock *sk, struct flowi4 *fl4,
>
> skb->priority = sk->sk_priority;
> skb->mark = sk->sk_mark;
> + skb->tstamp = sockc->transmit_time;
> skb_dst_set(skb, &rt->dst);
> *rtp = NULL;
>
> @@ -562,6 +563,7 @@ static int raw_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
> }
>
> ipc.sockc.tsflags = sk->sk_tsflags;
> + ipc.sockc.transmit_time = 0;
> ipc.addr = inet->inet_saddr;
> ipc.opt = NULL;
> ipc.tx_flags = 0;
It seems that skb_scrub_packet() will clear skb->tstamp, meaning that
going through a tunnel will break your feature.
Maybe we need to remove skb->tstamp clear from skb_scrub_packet() and
do the cleaning only in forwarding path.
WARNING: multiple messages have this Message-ID (diff)
From: Eric Dumazet <eric.dumazet@gmail.com>
To: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>,
netdev@vger.kernel.org
Cc: jhs@mojatatu.com, xiyou.wangcong@gmail.com, jiri@resnulli.us,
vinicius.gomes@intel.com, richardcochran@gmail.com,
intel-wired-lan@lists.osuosl.org, anna-maria@linutronix.de,
henrik@austad.us, tglx@linutronix.de, john.stultz@linaro.org,
andre.guedes@intel.com, ivan.briano@intel.com,
levi.pearson@harman.com, Richard Cochran <rcochran@linutronix.de>
Subject: Re: [RFC v2 net-next 02/10] net: ipv4: raw: Hook into time based transmission.
Date: Wed, 17 Jan 2018 16:28:14 -0800 [thread overview]
Message-ID: <1516235294.3606.18.camel@gmail.com> (raw)
In-Reply-To: <20180117230621.26074-3-jesus.sanchez-palencia@intel.com>
On Wed, 2018-01-17 at 15:06 -0800, Jesus Sanchez-Palencia wrote:
> From: Richard Cochran <rcochran@linutronix.de>
>
> For raw packets, copy the desired future transmit time from the CMSG
> cookie into the skb.
>
> Signed-off-by: Richard Cochran <rcochran@linutronix.de>
> Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
> ---
> net/ipv4/raw.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
> index 136544b36a46..e37ea8ab6a78 100644
> --- a/net/ipv4/raw.c
> +++ b/net/ipv4/raw.c
> @@ -381,6 +381,7 @@ static int raw_send_hdrinc(struct sock *sk, struct flowi4 *fl4,
>
> skb->priority = sk->sk_priority;
> skb->mark = sk->sk_mark;
> + skb->tstamp = sockc->transmit_time;
> skb_dst_set(skb, &rt->dst);
> *rtp = NULL;
>
> @@ -562,6 +563,7 @@ static int raw_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
> }
>
> ipc.sockc.tsflags = sk->sk_tsflags;
> + ipc.sockc.transmit_time = 0;
> ipc.addr = inet->inet_saddr;
> ipc.opt = NULL;
> ipc.tx_flags = 0;
It seems that skb_scrub_packet() will clear skb->tstamp, meaning that
going through a tunnel will break your feature.
Maybe we need to remove skb->tstamp clear from skb_scrub_packet() and
do the cleaning only in forwarding path.
next prev parent reply other threads:[~2018-01-18 0:28 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-17 23:06 [Intel-wired-lan] [RFC v2 net-next 00/10] Time based packet transmission Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 01/10] net: Add a new socket option for a future transmit time Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-18 8:42 ` [Intel-wired-lan] " Miroslav Lichvar
2018-01-18 8:42 ` Miroslav Lichvar
2018-01-18 17:13 ` Richard Cochran
2018-01-18 17:13 ` Richard Cochran
2018-02-01 0:49 ` Jesus Sanchez-Palencia
2018-02-01 0:49 ` Jesus Sanchez-Palencia
2018-02-01 4:16 ` Richard Cochran
2018-02-01 4:16 ` Richard Cochran
2018-02-01 9:27 ` Miroslav Lichvar
2018-02-01 9:27 ` Miroslav Lichvar
2018-02-01 20:55 ` Jesus Sanchez-Palencia
2018-02-01 20:55 ` Jesus Sanchez-Palencia
2018-01-23 21:22 ` Vinicius Costa Gomes
2018-01-23 21:22 ` Vinicius Costa Gomes
2018-01-24 3:04 ` Richard Cochran
2018-01-24 3:04 ` Richard Cochran
2018-01-24 22:46 ` Vinicius Costa Gomes
2018-01-24 22:46 ` Vinicius Costa Gomes
2018-01-26 2:12 ` Richard Cochran
2018-01-26 2:12 ` Richard Cochran
2018-02-12 22:39 ` Jesus Sanchez-Palencia
2018-02-12 22:39 ` Jesus Sanchez-Palencia
2018-02-13 9:56 ` Miroslav Lichvar
2018-02-13 9:56 ` Miroslav Lichvar
2018-01-18 17:11 ` Richard Cochran
2018-01-18 17:11 ` Richard Cochran
2018-01-23 18:12 ` [Intel-wired-lan] " Jesus Sanchez-Palencia
2018-01-23 18:12 ` Jesus Sanchez-Palencia
2018-01-19 21:15 ` [Intel-wired-lan] " Willem de Bruijn
2018-01-19 21:15 ` Willem de Bruijn
2018-01-20 2:09 ` [Intel-wired-lan] " Richard Cochran
2018-01-20 2:09 ` Richard Cochran
2018-01-25 9:12 ` [Intel-wired-lan] " Miroslav Lichvar
2018-01-25 9:12 ` Miroslav Lichvar
2018-01-25 16:52 ` Richard Cochran
2018-01-25 16:52 ` Richard Cochran
2018-01-23 18:24 ` Jesus Sanchez-Palencia
2018-01-23 18:24 ` Jesus Sanchez-Palencia
2018-01-23 20:02 ` [Intel-wired-lan] " Willem de Bruijn
2018-01-23 20:02 ` Willem de Bruijn
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 02/10] net: ipv4: raw: Hook into time based transmission Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-18 0:28 ` Eric Dumazet [this message]
2018-01-18 0:28 ` Eric Dumazet
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 03/10] net: ipv4: udp: " Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 04/10] net: packet: " Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 05/10] net/sched: Allow creating a Qdisc watchdog with other clocks Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 06/10] net/sched: Introduce the TBS Qdisc Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-18 13:35 ` [Intel-wired-lan] " Jamal Hadi Salim
2018-01-18 13:35 ` Jamal Hadi Salim
2018-01-18 13:44 ` [Intel-wired-lan] " Jamal Hadi Salim
2018-01-18 13:44 ` Jamal Hadi Salim
2018-01-23 21:45 ` [Intel-wired-lan] " Jesus Sanchez-Palencia
2018-01-23 21:45 ` Jesus Sanchez-Palencia
2018-01-18 17:18 ` [Intel-wired-lan] " Richard Cochran
2018-01-18 17:18 ` Richard Cochran
2018-01-23 22:01 ` [Intel-wired-lan] " Jesus Sanchez-Palencia
2018-01-23 22:01 ` Jesus Sanchez-Palencia
2018-01-19 21:18 ` [Intel-wired-lan] " Willem de Bruijn
2018-01-19 21:18 ` Willem de Bruijn
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 07/10] igb: Refactor igb_configure_cbs() Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 08/10] igb: Only change Tx arbitration when CBS is on Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 09/10] igb: Refactor igb_offload_cbs() Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-17 23:06 ` [Intel-wired-lan] [RFC v2 net-next 10/10] igb: Add support for TBS offload Jesus Sanchez-Palencia
2018-01-17 23:06 ` Jesus Sanchez-Palencia
2018-01-23 5:23 ` [Intel-wired-lan] [RFC v2 net-next 00/10] Time based packet transmission Richard Cochran
2018-01-23 5:23 ` Richard Cochran
2018-01-23 5:26 ` [Intel-wired-lan] " Richard Cochran
2018-01-23 5:26 ` Richard Cochran
2018-01-23 18:07 ` [Intel-wired-lan] " Jesus Sanchez-Palencia
2018-01-23 18:07 ` Jesus Sanchez-Palencia
2018-01-24 1:43 ` [Intel-wired-lan] " Levi Pearson
2018-01-24 1:43 ` Levi Pearson
2018-01-27 0:04 ` [Intel-wired-lan] " Jesus Sanchez-Palencia
2018-01-27 0:04 ` Jesus Sanchez-Palencia
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=1516235294.3606.18.camel@gmail.com \
--to=eric.dumazet@gmail.com \
--cc=intel-wired-lan@osuosl.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.