Commit Graph

14729 Commits

Author SHA1 Message Date
Michael Davidsaver 041423092f osdnetIntf.c cleanup indentation 2015-08-18 15:51:38 -04:00
Michael Davidsaver 869410d6f6 libCom/osi: osiLocalAddr() avoid race on initialization 2015-08-18 15:46:22 -04:00
Ambroz Bizjak 6862ef6580 timerQueueActive.patch from lp:1479316 2015-08-18 14:39:27 -04:00
Ambroz Bizjak b6aea68304 epicsSingletonMutex.patch from lp:1479316 2015-08-18 14:38:18 -04:00
Michael Davidsaver 9d00978176 src/ca/client: no need to remove const 2015-08-18 14:33:44 -04:00
Ambroz Bizjak b6fbea9610 repeaterSubscribeTimer.patch from lp:1479316 2015-08-18 14:24:10 -04:00
Michael Davidsaver 180f40c1f7 dbLock: fix unlock w/o lock during iocInit 2015-08-18 11:09:35 -04:00
Michael Davidsaver d5832354e8 iocInit: Don't free LSET until scan tasks have stopped 2015-08-18 11:09:35 -04:00
Michael Davidsaver 44980a1dac dbContextReadNotifyCache: variable length for CAC gets 2015-08-18 10:46:20 -04:00
Michael Davidsaver af1daea3e7 dbContext: local CA variable length 2015-08-18 10:46:20 -04:00
Michael Davidsaver b2716f0a19 dbCa: subscribe to variable length arrays 2015-08-18 10:46:20 -04:00
Michael Davidsaver 050b9f9a48 ioc/db/test: dbChannelTest use dbUnitTest.h 2015-08-18 09:07:18 -04:00
Michael Davidsaver 4ab6aa79e3 ioc/db/test: fixup arrShorthandTest to use dbUnitTest 2015-08-18 09:07:18 -04:00
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 fe4f607e63 libCom/errlog: Don't store stderr in pvtData.console
Some VxWorks BSPs close the stderr stream that the shell running
the startup script created and open a new one for the interactive
shell. This change makes pvtData.console==NULL mean use stderr
instead of storing the stderr value in pvtData.console at init.
2015-08-13 10:44:52 -05:00
Michael Davidsaver 02ac91aa2a epicsReadline: ensure readline context is zero'd
Otherwise ->osd != NULL for the default RTEMS readline impl
2015-08-12 10:17:31 -05:00
Andrew Johnson 9e82a96700 dbTest: Remove special ENUM handling from dbpf()
This was preventing the value check in cvt_st_menu() from working.
2015-08-10 15:04:11 -05:00
Andrew Johnson ef7399159c dbAccess: Make dbPut() always do special processing after put
If the value gets rejected by a put to SCAN, we must still call
dbPutSpecial() to add the record back onto its old scan thread.
2015-08-10 15:03:48 -05:00
Andrew Johnson d7b3293ba3 libCom: Use MSVC's struct timespec when available 2015-08-07 09:41:48 -05:00
Andrew Johnson 9014ca899d dbStatic: Fix invalid memory read 2015-07-30 11:57:50 -05:00
Andrew Johnson f1b403b59a Merged calinktest branch 2015-07-28 14:22:06 -05:00
Andrew Johnson 877a409de1 Fix podToHtml build issue on Windows 2015-07-24 15:59:38 -05:00
Andrew Johnson 7395d1d88d Make dbCa routines macros to dbLink wrappers 2015-07-24 14:06:45 -05:00
Andrew Johnson 4d3831ce58 Merged changes from 3.15 branch to revno 12699 2015-07-24 12:01:53 -05:00
Andrew Johnson c5130468cd Let dbdToHtml work with wrong newlines 2015-07-24 10:42:09 -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 c56091978c db: Fixed obscure dbCa bug
This could be triggered if dbCaRemoveLink() is called on a link for
which there is an outstanding dbCaPutCallback().

Normally a dbCaPutCallback() callback routine is passed the associated
userPvt pointer as an argument, but in the event that dbCaRemoveLink()
gets used on the same link between the put and its completion callback,
the callback routine was being called with the link pointer as the
argument instead.

For all the existing Asyn Soft Channel device supports this is not a
problem as they all pass the link pointer as their userPvt argument, but
that won't necessarily always be the case.

Also updated the comments describing the process of removing links.
2015-07-23 17:57:30 -05:00
Andrew Johnson 2f8e6bf17e Fix smoothing for Nan/Inf values in devAiSoftCallback 2015-07-23 13:05:38 -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
Andrew Johnson 1d99ad6cfc Move closer to having pluggable link types.
All link types now have a plink->precord pointer.
Add link support entry tables for const, DB and CA link types.
Route all link I/O options through the new plink->lset.
2015-07-22 14:56:48 -05:00
Andrew Johnson bd4d8ec26b Merged lockopt branch 2015-08-21 22:44:11 -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
Andrew Johnson ae3d3904d9 Fix minor locking issue in dbEvent.c 2015-07-17 18:09:14 -05:00
Andrew Johnson 002bafdf07 Add testHarnessDone 2015-07-17 18:06:58 -05: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 Davidsaver 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 1e68f3899d Merged gen-vcs-version branch 2015-07-10 14:02:01 -05:00
Michael Davidsaver 8b3d37d392 genVersionHeader: work with git repo w/o tags
--always is necessary for (new) repositories w/o any tags.
--abbrev=20 to get more than the default 7 characters of the hash
2015-07-10 14:19:44 -04:00