Commit Graph
412 Commits
Author SHA1 Message Date
Michael Davidsaver 1e39224836 dbCa: simplify shutdown
Don't need partial shutdown case anymore.
Also avoid race when destorying startStopEvent
2015-08-18 09:07:18 -04:00
Michael Davidsaver f99fbe1964 move dbCaShutdown earlier
shutdown dbCa thread before free'ing records
2015-08-18 09:07:18 -04:00
Michael Davidsaver aa04941119 ioc/db/test: wrong variable for -I 2015-08-18 09:07:18 -04:00
Andrew Johnson 46853d6862 Clean up compiler warnings 2015-08-16 17:43:10 -05:00
Andrew Johnson f1b403b59a Merged calinktest branch 2015-07-28 14:22:06 -05:00
Andrew Johnson 4d3831ce58 Merged changes from 3.15 branch to revno 12699 2015-07-24 12:01:53 -05:00
Andrew Johnson 7dd067e887 Merged dbCa bug-fix from 3.14 branch, revno 12595 2015-07-23 18:02:54 -05:00
Andrew Johnson 144281e0a3 Removed extraneous .db file 2015-07-23 12:34:05 -05:00
Andrew Johnson 83c2414ad0 Merged changes from 3.14 branch to revno 12594 2015-07-23 10:13:07 -05:00
Michael Davidsaver 504665bf09 iocInit: move dbCaShutdown earlier
Switch dbCaShutdown from an exit hook to
be called from iocShutdown.  Place it
after callback shutdown.
2015-07-21 19:08:07 -04:00
Michael Davidsaver 1411522a11 dbCa: only add dbCaExit once 2015-07-21 15:53:37 -04:00
Michael Davidsaver 8bfa40d858 dbScan: avoid race on shutdown 2015-07-16 17:05:41 -04:00
Michael Davidsaver 138e2f1ad5 callback: fix race on shutdown
epicsEventDestory() in the main thread could be called
before epicsEventTrigger() completes in the worker.
2015-07-16 17:05:41 -04:00
Andrew Johnson a5e1f367d6 Merged cbshutdown changes from 3.15 branch, revno 12690 2015-07-16 11:54:40 -05:00
Michael DavidsaverandAndrew Johnson fefe6fd1fc Fix shutdown issues with scan and callback.
The main reason for this merge proposal is the change to "public" API functions.

Use atomic counter to resolve data race on threadsRunning in callback.

Split up callbackShutdown() and scanShutdown() into two phases *Stop() and
*Cleanup(). The *Stop() functions signal worker threads, and wait for them to
exit. The *Cleanup() functions actually reclaim global resources.

These two mechanisms have couplings which are quite complex. I/O Intr scans
involve both scan lists and callbacks.
2015-07-16 11:48:29 -05:00
Michael Davidsaver eb31fcedeb iocInit: dbCa shutdown order 2015-07-13 17:51:46 -04:00
Michael Davidsaver dd6edb103c scanIoTest: set # of tests 2015-07-13 17:51:46 -04:00
Andrew Johnson 50e6a305b1 Merged changes from 3.15 branch to revno 12689 2015-07-13 13:42:10 -05:00
Andrew Johnson 5eb49ebaf0 Merged changes from 3.14 branch to revno 12590 2015-07-13 13:05:33 -05:00
Andrew Johnson 58602cfa80 Clean up in src/ioc/db/test/scanIoTest.c 2015-07-10 16:22:31 -05:00
Andrew Johnson fa1ddeeb1b Removed the last vestiges of RSET::get_value() 2015-06-23 18:04:33 -05:00
Andrew Johnson 961dc450c4 Merged changes from 3.15 branch up to Revno 12686 2015-06-05 13:48:57 -05:00
Ralph Lange fbd2d4dd31 dbStatic: fix buffer overrun in printing functions by extending the local buffer accordingly 2015-06-05 11:10:10 +02:00
Michael Davidsaver 7947807e09 fix typo 2015-05-18 21:46:01 -04:00
Andrew Johnson 3a7cb33234 Fixed some build issues in db/test 2015-04-22 18:01:20 -05:00
Andrew Johnson 6b6eb5ff6a Merged fix from 3.15 branch, up to revno 12671 2015-04-22 16:54:30 -05:00
Andrew Johnson 2774b4c4af Fix type problem with local CA channels
This commit fixes a problem introduced in Bazaar commit 12658.
Local CA channels were seeing the data type of a channel as an
IOC-specific (dbFldTypes.h) type value instead of the CA type
value from db_access.h.

We introduce a pair of dbChannel*CAType() macros which convert
the dbChannel's dbr_field_type and final_type values into the
CA equivalent type values, and use these macros whenever the
CA encoded field type value is needed. This ensures that the
meaning of the dbChannel member fields never changes (in 3.14
the addr.dbr_field_type was overwritten with the converted
value when connected to by rsrv).
2015-04-22 16:51:31 -05:00
Andrew Johnson fa23ba8a6a Merged changes from 3.15 branch up to revno 12670 2015-04-16 18:12:59 -05:00
Andrew Johnson a6d3c4f792 Document -D option to msi 2015-04-14 17:57:10 -05:00
Ralph Lange 09fab352b0 dbstatic: raise link field length limit to 256 by bumping internal buffer size 2015-04-13 17:13:09 +02:00
Andrew Johnson 30b8872150 Merged changes from 3.15 branch, to revno 12662 2015-04-09 16:13:54 -05:00
Andrew Johnson 2a0356c84f Merged fix to ReadNotifyCache buffer size issue from 3.14 branch 2015-04-09 15:53:16 -05:00
Michael Davidsaver 7a8266c419 ioc/db/test: ensure dbCaLinkTest tests dbContextReadNotifyCacheAllocator
Read the same size twice to ensure that a cached buffer is reused
2015-04-09 14:55:56 -04:00
Michael Davidsaver 0c16937a5a ioc/db/test: extend dbCaLinkTest to check CAC get operation 2015-04-09 14:36:14 -04:00
Michael Davidsaver ad6f55d92f dbStatic: always clear parser tempList
Warn if tempList is not empty when it should be
2015-04-08 18:37:12 -04:00
Michael Davidsaver e852de64ff dbStatic: fix leak in parser
"% cdef" not free'd
2015-04-02 18:58:15 -04:00
Michael Davidsaver 6ac1e050bd dbCa: missing inc. ref. when scan requests are queued
Missing caLinkInc() in scanComplete() drops ref.
2015-03-24 18:44:28 -04:00
Andrew Johnson 8344b4ed79 Merged changes from 3.15 up to revno 12658 2015-03-18 17:01:34 -05:00
Andrew Johnson eaef9aabdf Fix export type of .LINK$ fields, add tests 2015-03-18 16:48:07 -05:00
Andrew Johnson 1fd91f52e2 dbStatic: Add field type lookup routines 2015-03-18 16:34:07 -05:00
Michael Davidsaver 3a647fb38b iocInit: prepareLinks after autosave pass0
Allow autosave to restore link fields again...
2015-03-17 19:13:33 -04:00
Michael Davidsaver 8bf765365f std/rec/test: add asTest to RTEMS test harness 2015-03-17 15:26:08 -04:00
Michael Davidsaver e7037cc519 dbStatic: fix CONSTANT links
constantStr==NULL and constantStr=="" have different
meanings for recGblInitConstantLink() which is used with DOL.
constantStr should remain NULL unless explicitly set
by either initial("") or field(..., "")
2015-03-17 11:34:36 -04:00
Michael Davidsaver 52fc47dec5 start dbCaLinkTest 2015-03-13 15:24:07 -04:00
Michael Davidsaver e73ed24631 db/test: copy arrRecord from std/filters/test 2015-03-13 15:24:07 -04:00
Michael Davidsaver 77efc973da iocInit: free PPNR 2015-03-13 15:24:07 -04:00
Michael Davidsaver 3e8ba7d7cf dbCa: enable unittests 2015-03-13 15:24:07 -04:00
Michael Davidsaver a7a87372aa dbNotify: cleanup freelist 2015-03-13 15:24:07 -04:00
Michael Davidsaver a014314384 db/test: add simple processing callback to xRecord 2015-03-13 15:24:07 -04:00
Michael Davidsaver 8ef1e0d177 re-write scanIoTest 2015-03-13 15:24:07 -04:00