Andrew Johnson
752549d1c8
Fix epicsAtomic headers when used from C code
...
Several C++ and C99-isms crept in.
2014-07-25 15:05:58 -05:00
Michael Davidsaver
8fec9d6e00
epicsSpin: try lock return non-blocking
...
Avoid cantProceed() in try lock, even for undefined behavior.
2014-07-25 15:12:02 -04:00
Michael Davidsaver
5824f98972
epicsSpinTest: fix verifyTryLock()
...
avoid sleeping with a spinlock held.
Now test only works on SMP systems.
2014-07-25 15:11:54 -04:00
Michael Davidsaver
9d03275c53
iocInit: ensure dbLock cleanup after iocShutdown cleanup
...
by making dbLock init before initDatabase()
2014-07-25 13:49:55 -04:00
Michael Davidsaver
b5fe4abfa8
switch to use sysInWord and friends
2014-07-25 11:15:27 -04:00
Michael Davidsaver
95b916ecd4
thread pool: mark epicsJobCreate() as safe for job functions
...
Also, use epicsJobMove() to avoid some redundant code
2014-07-25 10:16:20 -04:00
Michael Davidsaver
cbfbce54f9
thread pool: epicsThreadPoolWait return ETIMEOUT
2014-07-25 09:59:46 -04:00
Michael Davidsaver
b3a1fe9c6b
thread pool: fix return of epicsJobUnqueue()
...
Return 0 on success (was queued, now is not),
1 if not queued initially, and EINVAL
if orphaned.
2014-07-24 18:56:27 -04:00
Michael Davidsaver
83dfc7980d
thread pool: handle failure to create worker
...
epicsJobQueue() returns EAGAIN when the first worker
can't be lazily created.
Failure to create workers beyond the first is
silently ignored.
2014-07-24 18:50:19 -04:00
Michael Davidsaver
69d1063067
thread pool: epicsJobQueue return EPERM
...
When pool control prevents operation
2014-07-24 18:19:33 -04:00
Andrew Johnson
9b6e270b97
Final spinlock tidying-up
...
* Abort epicsSpinTest() if epicsSpinCreate() returns NULL
* Adjust RELEASE_NOTES that describe the implementations.
2014-07-24 16:33:35 -05:00
Michael Davidsaver
fc4119094f
thread pool: epicsThreadPoolGetShared accepts NULL as defaults
2014-07-24 14:44:28 -04:00
Michael Davidsaver
fd2edfe94c
release notes
2014-07-24 14:22:52 -04:00
Michael Davidsaver
01a50b5165
thread pool test
2014-07-24 14:22:52 -04:00
Michael Davidsaver
658bd0b570
thread pool implementation
2014-07-24 14:22:52 -04:00
Michael Davidsaver
a8fd14aae1
Thread pool API
2014-07-24 14:22:52 -04:00
Michael Davidsaver
87a6688c17
epicsSpin: remove redundant cantProceed() messages
2014-07-24 10:23:55 -04:00
Ralph Lange
ae518f6e3e
ioc/db/test: Fix Windows build
2014-07-24 14:06:11 +02:00
Michael Davidsaver
3ba5bf943e
epicsSpin: better error messages when mis-use is detected
2014-07-23 18:40:08 -04:00
Andrew Johnson
846ef343e3
Merged ioc-shutdown2 branch.
2014-07-23 16:59:12 -05:00
Andrew Johnson
6bdb8f911a
Suppress errlog output of expected warning messages.
2014-07-23 16:18:32 -05:00
Michael Davidsaver
0bf17be9e3
mmio: vxWorks m68k use default, add weak symbols for old versions
2014-07-16 15:12:56 -04:00
Michael Davidsaver
0bcfbd0ffc
remove unused
2014-07-14 18:16:30 -04:00
Michael Davidsaver
34f0374ca5
dbLock: yet another fix to dbLockCleanupRecords()
...
track the lockRecord allocation
2014-07-14 17:57:17 -04:00
Andrew Johnson
2d4243981f
Fix warnings found by clang
2014-07-12 01:12:08 -05:00
Michael Davidsaver
3755b9eaad
dbLock: free lockSets
2014-07-11 18:49:41 -04:00
Michael Davidsaver
edf1ad0362
dbLock: another fix to dbLockCleanupRecords()
2014-07-11 18:49:41 -04:00
Michael Davidsaver
bb51281d9c
dbPutLinkTest: set # of tests
2014-07-11 16:59:22 -04:00
Michael Davidsaver
fd7a934ce3
dbPutLinkTest: test link string parsing
...
Test parsing to CONTANT and DB_LINK.
dbCa isn't initialized, so no test for CA_LINK.
2014-07-11 16:51:32 -04:00
Michael Davidsaver
f14bfaab24
dbUnitTest: add testdbGetFieldEqual()
2014-07-11 16:47:55 -04:00
Michael Davidsaver
a218bfd75c
dbLock: fix dbLockCleanupRecords
...
all lockRecord s allocated in one block. oops.
2014-07-11 16:27:41 -04:00
Michael Davidsaver
3f11fd1665
dbUnitTest: replace testdbPutField()
...
add testdbPutFieldOk() and testdbPutFieldFail()
which include calls to testPass() or testFail()
Leave testdbVPutField() as a building block.
2014-07-11 10:30:31 -04:00
Michael Davidsaver
ebc3834661
dbUnitTest: testIocInitOk/testIocShutdownOk testAbort() on failure
2014-07-11 10:28:54 -04:00
Andrew Johnson
2fb0b0763d
Implement 64-bit database field types.
...
Incorporates major reworking of the dbConvert.c file.
if the 64-bit stuff gets rejected most of that should
get pulled in anyway.
2014-07-10 18:13:28 -05:00
Michael Davidsaver
f85c3249ab
dbUnitTest: rename
2014-07-10 18:23:49 -04:00
Andrew Johnson
3ff49fc9b2
Fixed build errors, remove dependency on std.
...
Build errors: Include guard missing from epicsUnitTest.h;
dbShutdownTest.c was calling the non-universal strcasecmp()
instead of epicsStrCaseCmp().
ioc/db/test no longer depends on std. I modified
xRecord to make it a working record type, and simplified the
other test programs so they all use the same new expanded
dbd file rather than each making their own. I also added
dbShutdownTest() to epicsRunDbTests().
2014-07-10 14:27:44 -05:00
Andrew Johnson
2bf6d88607
templates: Quote path names in st.cmd files, permits spaces
...
Request from Eric Norum.
2014-07-01 10:55:52 -05:00
Andrew Johnson
3c91c17369
Changes for newer version of Pod::Simple::HTML
2014-06-23 22:14:35 -06:00
Andrew Johnson
5b9bee82a5
Document the sync filter.
...
Also, use enum values where we have them.
2014-06-23 22:11:52 -06:00
Michael Davidsaver
a9d4204d43
dbLock: free LSET
2014-06-23 16:28:28 -04:00
Michael Davidsaver
0c73bb9448
dbChannel: atexit
2014-06-23 16:28:27 -04:00
Michael Davidsaver
c8d9d5e952
dbLock: atexit
2014-06-23 16:28:27 -04:00
Michael Davidsaver
c838d5d870
dbBkpt: atexit
2014-06-23 16:28:26 -04:00
Michael Davidsaver
ddaa6e4eb6
dbNotify: cleanup atexit
2014-06-23 16:28:26 -04:00
Andrew Johnson
60a0c7f181
Make epicsExit subsystem reusable.
...
Calling epicsAtExit() after epicsExitCallAtExits() now
recreates the per-process list and registers the routine.
2014-06-23 16:28:25 -04:00
Michael Davidsaver
80dd66a58d
add dbUnitTest.h
...
hide boilerplate of tests using the PDB
2014-06-23 16:28:25 -04:00
Michael Davidsaver
1ae2ab1de6
dbShutdownTest
2014-06-23 16:28:24 -04:00
Michael Davidsaver
5caaf2d13c
cleanup initHook
2014-06-23 16:28:23 -04:00
Michael Davidsaver
3ca42fc838
cleanup iocsh
2014-06-23 16:28:22 -04:00
Michael Davidsaver
ad2bb0725d
asShutdown
2014-06-23 16:28:22 -04:00