Commit Graph

727 Commits

Author SHA1 Message Date
zimoch f7778539e8 make CALC/OCAL fields twice as long 2025-05-23 11:42:17 +02:00
zimoch 45ea3d5664 extend calc records and expressions to inputs A-U 2025-05-22 16:34:16 +02:00
zimoch 997746e5e2 fix epicsStrtod for 32 bit architectures 2025-03-21 15:16:25 +01:00
zimoch 09f96d056a Merge branch '7.0' into PSI-7.0 2025-03-21 15:15:57 +01:00
zimoch 1732c9440a fix for mingw warning about order of header files 2025-03-21 13:49:05 +01:00
zimoch acf4c92697 fix epicsExport for volatile and const variables 2025-03-21 13:49:04 +01:00
zimoch 93ba98cdca VxWorks does not mark abort() or exit() noreturn 2025-03-21 13:49:04 +01:00
Jeremy Lorelli 6ea6ae633b Define NOCRYPT, NOSOUND and NOKANJI before including windows.h 2025-03-19 11:19:45 -05:00
JJL772 fc5d3c9a5c Disable extraneous WIN32 declarations when including windows.h in epicsAtomicOSD.h 2025-03-19 11:19:45 -05:00
zimoch c75ad2673e no longer need extern "C" { } around epicsExport macros 2025-03-19 11:17:14 -05:00
zimoch b97a35fec8 Don't use __attribute__((noreturn)) on VxWorks
VxWorks does not mark abort() or exit() as noreturn.
Thus, functions declared noreturn which end in a call
to those functions cause a compiler warning on vxWorks.
2025-03-19 11:06:26 -05:00
Michael Davidsaver 48ebe2c64e Avoid initMainThread() except on vxworks
Move isOkToBlock tracking to osdThread.
Targets except vxworks can store this flag in epicsThreadOSD.
Continue to use TLS w/ vxWorks.

Note that setting of isOkToBlock for "main" thread becomes lazy.
2025-03-19 10:53:42 -05:00
Michael Davidsaver 13d6ca598c initHookRegister() make idempotent and MustSucceed 2025-03-05 10:02:38 -06:00
zimoch ee1a49045a support CROSS_COMPILER_RUNTESTS_ARCHS other than RTEMS 2025-03-05 10:00:44 -06:00
zimoch 43e75e3901 decorate functions that do not return 2025-03-05 09:51:57 -06:00
zimoch 2e77bc8cc1 improve atExit debugging 2025-03-05 11:21:19 +01:00
zimoch ea7459084e Merge remote-tracking branch 'github/noreturn' into PSI-7.0 2025-03-04 17:55:32 +01:00
zimoch ddc49e9f79 Merge remote-tracking branch 'github/epicsExportAddress' into PSI-7.0 2025-03-04 17:55:15 +01:00
zimoch 12144fe267 Merge remote-tracking branch 'github/RuntestArchs' into PSI-7.0 2025-03-04 17:49:04 +01:00
zimoch c5315d95b8 no longer need extern "C" { } around epicsExport macros 2025-03-04 17:45:04 +01:00
zimoch 74d231b04f decorate functions that do not return 2025-03-04 14:41:05 +01:00
zimoch 23521e0a08 Merge remote-tracking branch 'github/fdManager_using_poll' into PSI-7.0 2025-03-03 17:20:13 +01:00
zimoch 55791ef470 Merge branch 7.0.9 into PSI-7.0 2025-03-03 17:19:23 +01:00
zimoch 7b2fb669ec Merge remote-tracking branch 'xiaoqiang/7.0' into PSI-7.0 2025-03-03 17:14:20 +01:00
zimoch 312a602952 support CROSS_COMPILER_RUNTESTS_ARCHS other than RTEMS 2025-03-03 14:11:45 +01:00
Michael Davidsaver 7384351181 clarify cantProceed() message 2025-02-18 07:30:51 -08:00
zimoch 9c1334ae15 silence Codacy warning 2025-02-10 08:47:59 +01:00
Michael Davidsaver 9481deacb0 fdManagerTest: quiet codacy warnings 2025-02-10 08:47:59 +01:00
zimoch 8f1a3888c6 cleanup coding style in fdManager 2025-02-10 08:47:59 +01:00
zimoch c9183b5241 fdManager: filter poll flags for Window's sake 2025-02-10 08:47:59 +01:00
zimoch c3f57ee818 make fdManagerPrivate::fdReg volatile to avoid codacy warning 2025-02-10 08:47:59 +01:00
zimoch 27f4261dfb use smart pointers in fdManager 2025-02-10 08:47:59 +01:00
zimoch 5eb9997791 fix codacy warning: make fdManagerPrivate constructor explicit 2025-02-10 08:47:59 +01:00
zimoch bfc2f832ec fdManager uses poll() on Darwin too 2025-02-10 08:47:59 +01:00
zimoch f09b235fce Keep implementation details of fdManager out of header file 2025-02-10 08:47:59 +01:00
zimoch ece031c88b fdManager use std::vector 2025-02-10 08:47:59 +01:00
zimoch cbbbd67843 fdManager uses poll() on Windows and RTEMS too
RTEMS needs to use the "new" network stack
Windows has poll since Vista
Don't use poll on cygwin: it emulates poll() using select().
2025-02-10 08:47:59 +01:00
zimoch 57c0295024 fdManager changed to use poll()
The implementation using select() limits file desciptors to FD_SETSIZE,
typically 1024 on Linux. This number is too low for some applications,
for example for the CA gateway.
Therefore, Linux builds use poll() instead.
2025-02-10 08:47:59 +01:00
Michael Davidsaver 8f77e941c7 add fdManager test 2025-02-10 08:47:59 +01:00
Michael Davidsaver c76395abc6 remove fdmgrTest
Not a unittest, and not functional.
2025-02-10 08:47:59 +01:00
Michael Davidsaver 1d19ba4cc2 doc and log for *MustSucceed()
Replace the "never returns NULL." statement which is
manifestly not true.
2025-02-07 09:09:22 -08:00
JJL772 144f9756ea Add iocshSetError in a bunch of places 2025-02-05 10:16:16 -06:00
DW 48eed22f3b check IOCSH_STARTUP_SCRIPT before set 2025-02-05 10:03:35 -06:00
Michael Davidsaver e4ad4becde rationalize osdMutex
Avoids split allocation.
Eliminates special case free-list.

win32: eliminate pre-XP
rtems-score: eliminate non-fast
2024-12-29 16:35:26 -08:00
Jeremy Lorelli 721e9cc3a7 Add ABORT_ON_ASSERT flag to CONFIG_SITE
This flag causes EPICS to call abort() on assertion failures rather than
suspend the executing thread. With the epicsThreadSuspendSelf() behavior,
an IOC can end up in a difficult to detect error state where one or more
threads has essentially crashed due to an assertion failure.

This also matches the C behavior of assert(3)
2024-12-29 16:34:10 -08:00
Jeremy Lorelli 333be085c0 Fix compile error in tsSLList.h 2024-12-28 12:40:27 -08:00
zimoch b53505d339 Merge branch '7.0' into PSI-7.0 2024-12-05 16:58:15 +01:00
Chris Johns 594e5ee9db rtems: Set the name of EPICS threads so RTEMS commands report the name
Use the NP POSIX call pthread_setname_np to set the POSIX thread name.
2024-10-31 16:21:49 -05:00
Chris Johns 135193c4bd rtems: Fix shell networking commands
This patch cleans up the shell defines for the libbsd and legacy
network stack shell commands.

The top and rtems shell commands have been added.
2024-10-31 16:21:49 -05:00
Chris Johns 9d65da5c61 rtems: Fix rtems_bsdnet_bootp_server_address decl with RTEMS_LEGACY_STACK
The legacy stack provides this variable and this decl clashed. This was
seen before now due to the link order of libraries.
2024-10-31 16:21:49 -05:00