Michael Davidsaver
e23a5ae8ed
defer printing for callbackTest
...
test*() uses printf() so don't print
any results until all results are collected.
On RTEMS/vxWorks buffering of printf() gives
long delays which skew the test results.
2012-07-06 13:35:26 -04:00
Michael Davidsaver
b403dcc27f
release note for dbTestHarness
2012-07-05 15:25:18 -04:00
Michael Davidsaver
93485edcd9
sync filter checking
...
Detect condition which would result to a double free().
2012-07-05 15:25:18 -04:00
Michael Davidsaver
0f79bdadb4
scanlock for direct record access from channel filters
2012-07-05 15:25:16 -04:00
Andrew Johnson
f9bb1ef542
Fix vxWorks build issues from thread-hooks merge.
2012-07-05 13:39:00 -05:00
Ralph Lange
5f0717adea
documentation: Fix typo in html tag in RELEASE_NOTES
2012-07-05 14:37:32 +02:00
Andrew Johnson
a857f7a5ed
Merged Ralph's thread-hooks branch.
...
Minor modifications to fix the vxWorks epicsThreadInit() and
rename some functions.
2012-07-04 13:28:55 -05:00
Ralph Lange
39ed8f3d02
documentation: Updated RELEASE_NOTES
2012-07-03 16:39:57 +02:00
Ralph Lange
137283ec0b
libCom/osi: Add default start hook for _main_ thread
2012-07-03 15:27:50 +02:00
Ralph Lange
7b47cad8e4
libCom/osi: Clean up epicsThreadHooks API
...
- remove exit hooks completely
- remove non-public functions fom header files
- add test for epicsThreadMap
- fix bugs in RTEMS and vxWorks implementation of epicsThreadMap
2012-07-03 14:38:12 +02:00
Ralph Lange
e834832cda
libCom/osi: Don't decorate epicsThreadHook functions with epicsShareAPI
2012-07-03 13:20:01 +02:00
Ralph Lange
0e6a01d56a
libCom/osi: Streamline epicsThreadShowInfo functions between implementations
...
- epicsThreadShowInfo: private function to print headers or task line,
not in header file, using internal pointer type
2012-07-03 11:16:09 +02:00
Michael Davidsaver
f1c0458adc
dbEvent: use filtered field log on post event queue
2012-07-02 18:00:55 -04:00
Michael Davidsaver
b5c6c78c85
Make dbChannel access functions into macros
2012-07-02 18:00:55 -04:00
Michael Davidsaver
2d64b06cf4
doc chPostEventFunc
2012-07-02 18:00:53 -04:00
Ralph Lange
7c27c7c56d
documentation: Add epicsThreadHooks info to RELEASE NOTES
2012-07-02 18:31:08 +02:00
Ralph Lange
da91893ec2
libCom/test: Add test for epicsThreadHooks
2012-07-02 18:18:54 +02:00
Andrew Johnson
9fe5ce82d3
Merged the db-test branch.
...
Also made additional changes:
* Simplified xRecord.c so it can run on vxWorks.
* Standard way to load DBD and DB files in tests
All test harnesses now run on vxWorks (but some tests still fail).
2012-07-02 11:03:55 -05:00
Ralph Lange
37e490d1b2
libCom/osi: Make vxWorks implementation of epicsThreadMap() safe and dynamic
2012-07-02 14:21:39 +02:00
Ralph Lange
cfd8c0abde
libCom/osi: Fix nesting for epicsThreadHooks, add WIN32 implementation, lock traversal
...
- call (generic) exit hook after calling the (specific) epicsExitCallAtThreadExits()
- for start hooks added as 1-2-3, run exit hooks in opposite order: 3-2-1
- add calls to hooks module to WIN32 osdThread.c
- add lock/unlock to hook list traversal
2012-07-02 11:31:01 +02:00
Andrew Johnson
da9982f875
libCom: Fix unsigned overflow limits in epicsParse*
...
The strtoul() routine accepts negative numbers. This fix
ensures we handle them properly, and adds suitable tests.
Also fix the test for 1e300, in case the compiler gives a
slightly different literal constant than strtod() returns.
2012-06-30 15:34:29 -05:00
Michael Davidsaver
7d51031d60
RTEMS test harness show run directory
2012-06-29 17:02:25 -04:00
Michael Davidsaver
788d5a1ca1
minor
2012-06-29 17:02:25 -04:00
Michael Davidsaver
d6bda6fb3a
arrTest cleanup on exit
...
Do test db cleanup after hooks registered by iocInit
2012-06-29 17:02:25 -04:00
Michael Davidsaver
b5c223f462
fix tsTest
2012-06-29 17:02:24 -04:00
Michael Davidsaver
f5bad40474
sync needs to free held events
...
The sync plugin may hold an update internally.
If this is done then it must be free'd when
the dbChannel is closed.
2012-06-29 17:02:24 -04:00
Michael Davidsaver
60b684a4dc
update dbndTest
2012-06-29 17:02:24 -04:00
Michael Davidsaver
d2b0e92001
db_close_events cleanup
...
Move cleanup from event thread to caller.
This handles cases (unit tests) where the task
is never started.
The pexitsem flag serves as the indicatior that
the event task was started.
2012-06-29 17:02:23 -04:00
Michael Davidsaver
46fb21c880
dbnd must free dropped events
2012-06-29 17:02:22 -04:00
Michael Davidsaver
a103a2434a
dbEvent don't queue dropped events
2012-06-29 17:02:22 -04:00
Michael Davidsaver
e6ae903f2c
notes on db_field_log usage
2012-06-29 17:02:22 -04:00
Michael Davidsaver
aa17f317f8
define more of probe field log
...
plugins don't need to inspect more than
field_type, field_size, and no_elements.
In case they do define type=val to prevent
accidental use of uninitialized pointer.
2012-06-29 17:02:20 -04:00
Andrew Johnson
fb61234431
Change the epicsParse APIs to return a units pointer.
...
This lets us use epicsParseDouble() for scan rate parsing.
Ensure the scanOnce thread is a higher priority than the fastest
periodic scan thread, irrespective of how many threads there are.
2012-06-29 14:41:35 -05:00
Ralph Lange
d6648d4473
libCom/osi: Add some copyrights for ITER
2012-06-29 18:12:07 +02:00
Ralph Lange
8c323b2197
libCom/osi: Add epicsThreadMap (calls user function for each thread)
2012-06-29 17:54:38 +02:00
Andrew Johnson
bde52418b9
Various fixes for vxWorks
...
Provide a separate dbd file for each test.
Don't require a writable filesystem.
Simplfy xRecord.c again.
2012-06-29 10:09:56 -05:00
Ralph Lange
1f5376b30b
libCom/osi: Add RTEMS and vxWorks implementation for epicsThreadHooks
2012-06-29 14:49:24 +02:00
Ralph Lange
7e9f048433
Add decorations to epicsThreadHooks.c
2012-06-29 11:22:48 +02:00
Ralph Lange
803777329c
Cleanup of epicsThread hooks
...
- move declarations to epicsThread.h, use epicsThreadId type
- use static elllist initializer for static lists
2012-06-29 11:15:47 +02:00
Michael Davidsaver
2fd6004827
forgot to remove TODO
2012-06-28 13:57:24 -04:00
Michael Davidsaver
4986c184c7
cleanup for dbRegisterFilter()
2012-06-28 13:44:33 -04:00
Ralph Lange
222ea314b0
Add thread hooks to epicsThread that are called when a thread starts or exits
...
- add Linux implementation that
+ sets the system command name to the EPICS thread name
+ retrieves the Linux LWP ID and prints it instead of the posix thread ID
in show commands
2012-06-28 18:12:26 +02:00
Michael Davidsaver
683093222a
integer type should be epicsInt32
...
Can't use long for this on 64-bit systems
2012-06-28 10:55:49 -04:00
Michael Davidsaver
61b285a5e3
booleans are stored as char not int
2012-06-28 10:55:48 -04:00
Michael Davidsaver
4a393a428d
fix examples in chfPlugin.h
2012-06-28 10:55:47 -04:00
Michael Davidsaver
8eedb09395
chfPluginTest: more verbose error messages
2012-06-28 10:55:47 -04:00
Michael Davidsaver
4a6216534c
rtems test harness setup to create temp files
...
Apparently the default location for tmp files
doesn't exist in the default IMFS tree.
2012-06-28 10:55:46 -04:00
Michael Davidsaver
39ccbeeb11
Make db unit tests self contained
2012-06-28 10:55:46 -04:00
Michael Davidsaver
026307c06d
db cleanup
...
cleanup to allow database re-load
2012-06-28 10:55:44 -04:00
Andrew Johnson
4eb31d7edc
Fix dbScan bug, add scan period units and checking.
2012-06-27 16:43:15 -05:00