EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Ring buffer overflow
From: Mark Rivers via Tech-talk <[email protected]>
To: Abdalla Ahmad <[email protected]>
Cc: tech-talk <[email protected]>
Date: Mon, 23 Dec 2019 13:45:32 +0000
Hi Abdalla,


> scanOnce: Ring buffer overflow

?> For now I rarely get this message and the IOC is working fine, but what is the reason behind it?
> Could the record's IO is taking more time than the scan time?


That message is coming from dbScan.c in EPICS base.  It usually means that you have records with SCAN=I/O Intr that are processing very fast, i.e. lots of callbacks from your asyn driver.


There is a callback queue in EPICS base that is overflowing.   Since the problem is only happening every once in a while you can probably eliminate the message by increasing the size of the queue.  The queue size defaults to 2000.  You can check the current size with callbackShowQueue:


epics> callbackQueueShow
PRIORITY  HIGH-WATER MARK  ITEMS IN Q  Q SIZE  % USED  Q OVERFLOWS
   cbLow                7           0    2000     0.0            0
cbMedium                0           0    2000     0.0            0
  cbHigh                0           0    2000     0.0            0

You can increase the size to 5000 by adding this command to your IOC startup script before iocInit:

callbackSetQueueSize(5000)


Mark




________________________________
From: Tech-talk <[email protected]> on behalf of Abdalla Ahmad via Tech-talk <[email protected]>
Sent: Monday, December 23, 2019 12:44 AM
To: [email protected]
Subject: Ring buffer overflow


Hi



In an asyn port driver, I get the following message on the IOC shell



scanOnce: Ring buffer overflow



For now I rarely get this message and the IOC is working fine, but what is the reason behind it? Could the record's IO is taking more time than the scan time?



Best Regards,

Abdalla.

References:
Ring buffer overflow Abdalla Ahmad via Tech-talk

Navigate by Date:
Prev: Raspberry Pi camera Vishnu Patel via Tech-talk
Next: pscdrv fftwrap compile error for the Debian/ x64 Ha, Kiman via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Ring buffer overflow Abdalla Ahmad via Tech-talk
Next: Raspberry Pi camera Vishnu Patel via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
ANJ, 23 Dec 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·