lkml.org 
[lkml]   [2019]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.3 079/197] sched: etf: Fix ordering of packets with same txtime
    Date
    From: Vinicius Costa Gomes <vinicius.gomes@intel.com>

    [ Upstream commit 28aa7c86c2b49f659c8460a89e53b506c45979bb ]

    When a application sends many packets with the same txtime, they may
    be transmitted out of order (different from the order in which they
    were enqueued).

    This happens because when inserting elements into the tree, when the
    txtime of two packets are the same, the new packet is inserted at the
    left side of the tree, causing the reordering. The only effect of this
    change should be that packets with the same txtime will be transmitted
    in the order they are enqueued.

    The application in question (the AVTP GStreamer plugin, still in
    development) is sending video traffic, in which each video frame have
    a single presentation time, the problem is that when packetizing,
    multiple packets end up with the same txtime.

    The receiving side was rejecting packets because they were being
    received out of order.

    Fixes: 25db26a91364 ("net/sched: Introduce the ETF Qdisc")
    Reported-by: Ederson de Souza <ederson.desouza@intel.com>
    Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    net/sched/sch_etf.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/net/sched/sch_etf.c
    +++ b/net/sched/sch_etf.c
    @@ -177,7 +177,7 @@ static int etf_enqueue_timesortedlist(st

    parent = *p;
    skb = rb_to_skb(parent);
    - if (ktime_after(txtime, skb->tstamp)) {
    + if (ktime_compare(txtime, skb->tstamp) >= 0) {
    p = &parent->rb_right;
    leftmost = false;
    } else {

    \
     
     \ /
      Last update: 2019-10-27 22:21    [W:4.180 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site