packet re-ordering on SMP machines.

From: Ben Greear (
Date: Sun Aug 25 2002 - 02:18:20 EST

It appears from my initial tests on 2.4.20-pre4, that packets sent on
one port, and received on another port on the same machine (via a cross-over
cable), can be re-ordered. I see about 2000 reordered packets per 5,000,000 packets
sent (sending about 70,000 packets-per-second on a dual-port e1000 NIC.)

By re-ordered, I mean that a method called from process_backlog in dev.c
is being handed packets in a different order than they are being poked into
the driver with hard_start_xmit on the other interface. If each CPU can be running the
process_backlog, then I can see how this could be happening.

1) Is this expected behaviour?

2) Is there any standard (ie configurable) way to enforce strict ordering on an
     SMP system?

3) If answer to 2 is no, would you all be interested in a patch that
     did allow strict ordering (if indeed I can figure out how to write one)?


Ben Greear <>       <Ben_Greear AT>
President of Candela Technologies Inc

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to More majordomo info at Please read the FAQ at

This archive was generated by hypermail 2b29 : Sat Aug 31 2002 - 22:00:15 EST