I don't specifically know about user-space, but "Jun Yuan" wrote a patch for me, adding a function called `ecrt_domain_received` that tells you whether the domain has been received or not (in kernel-space).
I have tested this function with domains spanning into multiple packets and calling it while some of the packets have been received and others not, and it is safe. I just checked the latest development branch and unfortunately this has not been added to the repository (I wonder why). If the developers of the master are interested, I could present the test we performed so that they could be sure the patch works and hopefully include it in the next release. On Sun, Jul 1, 2012 at 12:00 PM, <[email protected]>wrote: > > I was looking at the code and they map the datagram directly to user > space and has a skb ring size of 2 frames. data cannot be available for > a re-write until it is acked by the interrupt completion of the ethernet > device. > You need to query the skb->users counter and check when it is > decremented back -- meaning when transmission complete takes place. > > I believe the curretn design might cause problem in heavy traffic or in > preempt rt when the transmit complete threaded interrupt has a "too" low > priority. > > On Thu, 2012-06-28 at 19:38 +0200, Johnathan Van Why wrote: > > The software system we are setting up needs to be able to send an > > EtherCAT frame, then wait until the network data is available for > > processing to resume (rather than wait until the next cycle time). Is > > there any way to do that with the EtherCAT Master? This is a userspace > > application. > > > > Thanks for any help, > > Johnathan Van Why > > _______________________________________________ > > etherlab-users mailing list > > [email protected] > > http://lists.etherlab.org/mailman/listinfo/etherlab-users > >
_______________________________________________ etherlab-users mailing list [email protected] http://lists.etherlab.org/mailman/listinfo/etherlab-users
