[vortex] How to change the UDP data area in the 3c59x.c driver level

Donald Becker becker@scyld.com
Wed, 14 Mar 2001 01:35:14 -0500 (EST)


On Tue, 13 Mar 2001, Marcus Ramos wrote:

> I am working on the development of an application that needs to
> timestamp UDP packets right before they are put on the wire, that means,
> on the driver level. I've modified the 3c59x.c source code at function
> boomerang_xmit_start() in order to simulate the insertion of a timestamp
> in the data area of the UDP packet.

You probably want to drop the Tx queue length way down in order to
reduce the queueing delay.

> if I were not allowed to change the contents of the UDP data segment. Of
> course I set (skb->data)+40 and (skb->data)+41 to zeroes, as to inform
> that no checksum will be used (at the least for the time being). That

The 3c905B and 905C can recalculate the checksum for you!
You can add the following bits to the status word in boomerang_start_tx()
  AddIPChksum=0x02000000, AddTCPChksum=0x04000000, AddUDPChksum=0x08000000,


Donald Becker				becker@scyld.com
Scyld Computing Corporation		http://www.scyld.com
410 Severn Ave. Suite 210		Second Generation Beowulf Clusters
Annapolis MD 21403			410-990-9993