RE: Eliminating Packet Latency

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Michael,

You can try this. The 3.10.0 code looked a little different, but this is the
gist of what I did on the older code. This is untested, so you are on the
hook for that part. I don't even know if this compiles, but it should:

--- linux-3.10.old/net/core/dev.c       2016-03-15 10:57:11.399668975 -0600
+++ linux-3.10/net/core/dev.c   2016-03-15 11:14:58.566734817 -0600
@@ -2675,28 +2675,6 @@
        if (unlikely(test_bit(__QDISC_STATE_DEACTIVATED, &q->state))) {
                kfree_skb(skb);
                rc = NET_XMIT_DROP;
-       } else if ((q->flags & TCQ_F_CAN_BYPASS) && !qdisc_qlen(q) &&
-                  qdisc_run_begin(q)) {
-               /*
-                * This is a work-conserving queue; there are no old skbs
-                * waiting to be sent out; and the qdisc is not running -
-                * xmit the skb directly.
-                */
-               if (!(dev->priv_flags & IFF_XMIT_DST_RELEASE))
-                       skb_dst_force(skb);
-
-               qdisc_bstats_update(q, skb);
-
-               if (sch_direct_xmit(skb, q, dev, txq, root_lock)) {
-                       if (unlikely(contended)) {
-                               spin_unlock(&q->busylock);
-                               contended = false;
-                       }
-                       __qdisc_run(q);
-               } else
-                       qdisc_run_end(q);
-
-               rc = NET_XMIT_SUCCESS;
        } else {
                skb_dst_force(skb);
                rc = q->enqueue(skb, q) & NET_XMIT_MASK;
@@ -2705,7 +2683,8 @@
                                spin_unlock(&q->busylock);
                                contended = false;
                        }
-                       __qdisc_run(q);
+            __netif_schedule(q);
+            qdisc_run_end(q);
                }
        }
        spin_unlock(root_lock);

Dave

-----Original Message-----
From: linux-rt-users-owner@xxxxxxxxxxxxxxx
[mailto:linux-rt-users-owner@xxxxxxxxxxxxxxx] On Behalf Of Stanislav Meduna
Sent: Tuesday, March 15, 2016 2:56 AM
To: Michael Hewitt; linux-rt-users@xxxxxxxxxxxxxxx
Subject: Re: Eliminating Packet Latency

On 3/14/2016 10:02 PM, Michael Hewitt wrote:

> Generally, we see packet delivery variations of less than 100 
> microseconds, which is fabulous.  Occasionally, we see a packet 
> delivery delay in excess of 1000 microseconds.

Maybe this thread applies
http://www.spinics.net/lists/linux-rt-users/msg09887.html
(no straightforward solution there though).

-- 
                                 Stano

--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at
http://vger.kernel.org/majordomo-info.html

Attachment: smime.p7s
Description: S/MIME cryptographic signature


[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux