On Mon, Mar 3, 2014, at 05:12 PM, EBo wrote:
> 
> Euuu... is there any log or indication that a non zero even occurred?  
> EAGAIN is a drop dead error.  That implies, if I understand the 
> conversation correctly, that you ran out of memory on the machine.  That 
> should be a fatal error on this type of app.  It would be interesting to 
> discuss how we could do a controlled slow stop if the machine is in 
> motion, instead of an emergency stop, but I see this as an emergency 
> stop situation.  

I don't think the issue is "what to do if the error occurs".  The issue is
"how do you design it so the error CANNOT occur".  The ringbuffer
code is not doing malloc or other dynamic allocation, and it isn't a
question of running out of memory on the machine.  I think it actually
isn't hard to make sure the error won't occur.  My gripe is that if you've
gone to the trouble of making sure the error can't occur, then why
waste CPU cycles testing for it.

Certainly the error can't occur in the existing code, because the entire
ringbuffer isn't there.  It simply communicates using a couple of shared
variables, and the code is designed to work correctly.


-- 
  John Kasunich
  jmkasun...@fastmail.fm

------------------------------------------------------------------------------
Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works. 
Faster operations. Version large binaries.  Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to