CA_LINK + CPP + slow dset = callback queue overflow
Bug #1362362 reported by
mdavidsaver
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Fix Released
|
Low
|
mdavidsaver |
Bug Description
In eventCallback in dbCa.c. When CP or CPP link modifiers are used on a CA_LINK each monitor updates results in a call to scanOnce(). If device support processing takes longer than the update period the Once queue can overflow.
This could be avoided by setting a flag, which is cleared when processing is complete. Monitor updates could be ignored (or queued) while the flag is set.
Related branches
lp://staging/~epics-core/epics-base/dbscan-update
- mdavidsaver: Needs Resubmitting
- Andrew Johnson: Needs Fixing
- Ralph Lange: Needs Fixing
-
Diff: 488 lines (+231/-73)7 files modifiedsrc/ioc/db/dbCa.c (+28/-3)
src/ioc/db/dbCaPvt.h (+51/-50)
src/ioc/db/dbScan.c (+65/-17)
src/ioc/db/dbScan.h (+6/-3)
src/ioc/db/test/Makefile (+6/-0)
src/ioc/db/test/dbScanTest.c (+73/-0)
src/ioc/db/test/epicsRunDbTests.c (+2/-0)
Changed in epics-base: | |
assignee: | nobody → mdavidsaver (mdavidsaver) |
Changed in epics-base: | |
status: | New → Fix Committed |
Changed in epics-base: | |
status: | Fix Committed → Fix Released |
status: | Fix Released → Fix Committed |
Changed in epics-base: | |
importance: | Undecided → Low |
Changed in epics-base: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.