Re: [netmap] when does a packet in the netmap ring send out exactly

2017-11-20 Thread Vincenzo Maffione
Hi, Netmap version (tag v11.3 vs master) should be unrelated. Are you using ixgbe? In this case it may depend on the ixgbe driver version that netmap is using for patching. On github master you can change the version by modifying the ixgbe line in LINUX/default-config.mak.in_. Valid versions are

Re: [netmap] when does a packet in the netmap ring send out exactly

2017-11-20 Thread Xiaoye Sun
Hi Luigi, Thanks! I was using the most recent netmap on Github and I believe the tail pointer only moves forward when there are less than half of the total slots available in the netmap ring. Then I switch to the version of v11.3 , it behaves as wha

Re: [netmap] when does a packet in the netmap ring send out exactly

2017-11-20 Thread Luigi Rizzo
Hi, I think if you call the TXSYNC ioctl without advancing the head pointer, then the tail is advanced as much as possible. Cheers luigi On Mon, Nov 20, 2017 at 3:35 PM, Xiaoye Sun wrote: > Hi, > > I found that the tail pointer only moves when the ring has less than half > of the slots available

Re: [netmap] when does a packet in the netmap ring send out exactly

2017-11-20 Thread Xiaoye Sun
Hi, I found that the tail pointer only moves when the ring has less than half of the slots available. This prevents me from knowing the accurate time when the packet in a slot is processed. Is there a way to move the tail pointer as long as the packet in the slot is processed? Is this a configurab

Re: [netmap] when does a packet in the netmap ring send out exactly

2017-10-27 Thread Vincenzo Maffione
Hi, This is actually a limitation of the netmap API: ring->tail is exposed to the user so that it knows it can use the slots in the range "[ring->head..ring->tail[" for new transmissions (note that head is included, tail excluded, to prevent wraparound). However, there is no explicit indication o

[netmap] when does a packet in the netmap ring send out exactly

2017-10-26 Thread Xiaoye Sun
Hi I write a netmap program that sends packets to the network. my program uses one netmap ring and fills the ring slots with packets. My program needs to do something (action A) after a particular packet (packet P) in the ring slot is sent to the network. so the program tracks the position of the