* ctc_lcs.c: ensure pszTUNDevice is free'd
'pszTUNDevice = strdup( DEF_NETDEV );' is definitely lost.
pszOATFilename check included to follow convention.
* cckddasd.c: ensure dasdsfn is free'd
1. ckd_dasd_init_handler invokes cckd_sf_parse_sfn
2. ckd_dasd_init_handler invokes ckd64_dasd_init_handler
3. ckd64_dasd_init_handler invokes cckd_sf_parse_sfn
Leaving previous dasdsfn dangling. Given how 'dasdsfn' is managed (e.g.,
in attach_device and dasd_close_device), it may be more elegant to
compare the previous dasdsfn to the current pathname and throwing a
warning if they are different.
* config.c: ensure prev_buf is free'd
* panel.c: zero prev_psw
To avoid instances of memcmp'ing random stack data with curr_psw.
* control.c: zero newregs tlb
ARCH_DEP( maddr_l ) may reference tlb.asb and tlb.common - ensure
newregs in program_return does not reference garbage stack data.
* cckddasd64.c: zero L2_pad
To avoid feeding random stack data to syscalls later on (e.g., write in
cckd64_write).
* panel.c: ensure messages are null delimited
Uses of string.h functions and regexec assume the string is null
delimited. This may not be true with some _PANMSG msg uses.
* ecpsvm.c: ensure buffer is null delimited
* refactor: CPU_BITMAP formatting
When CPU_BITMAP is __uint128_t and F_CPU_BITMAP is '"%16.16"PRIX64',
random/clobbered stack data will be referenced in the associated libc
formatting routines used by fwritemsg due to the different stack
alignment requirements of the variadic arguments.
* refactor: reorganize history_init
panel_command may be invoked (e.g., 'LPARNUM BASIC') prior to the panel
display thread being initialized. This can lead to history_add being
invoked prior to history_init (causing dangling pointers).
* cckddasd64: zero the entire free block to avoid writing garbage to underlying file
Per MemorySanitizer
* w32util.c: set_thread_name buffer overflow
Ensures correct nNumberOfArguments argument on x64. Updated the struct
definition to match the Microsoft documentation:
https://learn.microsoft.com/en-us/visualstudio/debugger/tips-for-debugging-threads
SetThreadDescription was introduced in Windows 10 version 1607, so
Kernel32.dll could technically be probed to see if that export exists.
* chore: run codespell on source/header files
Fixes most reported typos discovered by codespell (while trying to be
unopinionated about American vs. British English).
* chore: run codespell on build/readme files
. Fix compiler warnings on macOS.
. Fix compiler warnings on GCC 12.
. Use performance cores on Apple Silicon. (Enrico Sorichetti)
. Save maxprio/minprio in sysblk so impl() doesn't clobber them. (Tyler Mitchell)
. Handle non-GNU Linuxes properly. (Tyler Mitchell)
. getprotobyname: some Linuxes want "tcp" not "TCP". (Tyler Mitchell)
. Fix for occasional crash on exit. (Tyler Mitchell):
In POSIX, detach_thread() is neither needed nor valid
after a return from join_thread(). When the latter returns,
the thread has exited and its resources are released,
so detach_thread() not only is not needed, but references
deallocated resources. This can be harmless, but not always.
* Work around nonportable printing of pthread_t values.
Consider these warnings:
```
CC hthreads.lo
In file included from msgenu.h:19,
from hercules.h:104,
from hthreads.c:19:
hthreads.c: In function 'locks_cmd':
printfmt.h:120:33: warning: format '%lx' expects argument of type 'long unsigned int *', but argument 3 has type 'struct __pthread_st **' [-Wformat=]
120 | #define SCN_TIDPAT "%"PRIx64 // complete format spec
| ^~~
hthreads.c:1295:31: note: in expansion of macro 'SCN_TIDPAT'
1295 | else if (sscanf( argv[1], SCN_TIDPAT "%c", &tid, &c ) != 1)
| ^~~~~~~~~~
In file included from /usr/include/sys/inttypes.h:43,
from /usr/include/sys/mutex.h:144,
from /usr/include/net/if.h:87,
from /usr/include/net/route.h:40,
from hstdinc.h:154,
from hthreads.c:14:
/usr/include/amd64/int_fmtio.h:112:19: note: format string is defined here
112 | #define PRIx64 "lx" /* uint64_t */
In file included from msgenu.h:19,
from hercules.h:104,
from hthreads.c:19:
hthreads.c: In function 'threads_cmd':
printfmt.h:120:33: warning: format '%lx' expects argument of type 'long unsigned int *', but argument 3 has type 'struct __pthread_st **' [-Wformat=]
120 | #define SCN_TIDPAT "%"PRIx64 // complete format spec
| ^~~
hthreads.c:1563:31: note: in expansion of macro 'SCN_TIDPAT'
1563 | else if (sscanf( argv[1], SCN_TIDPAT "%c", &tid, &c ) != 1)
| ^~~~~~~~~~
In file included from /usr/include/sys/inttypes.h:43,
from /usr/include/sys/mutex.h:144,
from /usr/include/net/if.h:87,
from /usr/include/net/route.h:40,
from hstdinc.h:154,
from hthreads.c:14:
/usr/include/amd64/int_fmtio.h:112:19: note: format string is defined here
112 | #define PRIx64 "lx" /* uint64_t */
tcpnje.c: In function 'tcpnje_thread':
tcpnje.c:1458:15: warning: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'pthread_t' {aka 'struct __pthread_st *'} [-Wformat=]
1458 | DBGMSG(1, "HHCTN002I %4.4X:TCPNJE - networking thread "TIDPAT" started for link %s - %s\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcpnje.c:98:109: note: in definition of macro 'DBGMSG'
98 | #define DBGMSG(_level, ...) if ((tn->dev->ccwtrace && (_level & tn->trace)) || (_level & tn->debug)) logmsg(__VA_ARGS__)
| ^~~~~~~~~~~
```
Apparently, values of type TID, which expands to pthread_t, are scanned in
with sscanf(). Unfortunately this is quite difficult since it is unknown
if these values are integers (and what size), pointers, or even
strucures. In the last case they can't be printed or scanned at all.
This follows from
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html
The workaround is to define an integral type which is (hopefully) long
enough to contain the pthread_t value; it's the same type that is used
when printing it, so hopefully that's ok. Then we use this type for
sscanf() to store its scanned value in, so that it matches with the
pattern given in SCN_TIDPAT. Then the value is copied to the TID
variable.
If a pthread_t is a structure, we're out of luck and this won't work at
all.
* Fix a simple format string argument mismatch.
CC cckddasd.lo
In file included from hercules.h:104,
from cckddasd.c:21:
cckddasd.c: In function 'cckd_trace':
cckddasd.c:6715:13: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'suseconds_t' {aka 'int'} [-Wformat=]
6715 | "%s.%6.6ld %1d:%04X ", // "hh:mm:ss.uuuuuu n:CCUU "
| ^~~~~~~~~~~~~~~~~~~~~
6716 | todwrk + 11, // "hh:mm:ss" (%s)
6717 | timeval.tv_usec, // "uuuuuu" (%6.6ld
| ~~~~~~~~~~~~~~~
| |
| suseconds_t {aka int}
msgenu.h:208:70: note: in definition of macro 'MSGBUF'
208 | #define MSGBUF( _buf, ... ) snprintf(_buf, sizeof(_buf), ## __VA_ARGS__ )
| ^~~~~~~~~~~
cckddasd.c:6715:22: note: format string is defined here
6715 | "%s.%6.6ld %1d:%04X ", // "hh:mm:ss.uuuuuu n:CCUU "
| ~~~~~^
| |
| long int
| %6.6d
CC tcpnje.o
tcpnje.c: In function 'tcpnje_thread':
tcpnje.c:1848:25: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'suseconds_t' {aka 'int'} [-Wformat=]
1848 | DBGMSG(512, "HHCTN127D %4.4X:TCPNJE - select() timeout after %ld seconds %ld microseconds\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1849 | devnum, tvcopy.tv_sec, tvcopy.tv_usec);
| ~~~~~~~~~~~~~~
| |
| suseconds_t {aka int}
tcpnje.c:98:109: note: in definition of macro 'DBGMSG'
98 | #define DBGMSG(_level, ...) if ((tn->dev->ccwtrace && (_level & tn->trace)) || (_level & tn->debug)) logmsg(__VA_ARGS__)
| ^~~~~~~~~~~
tcpnje.c:1848:88: note: format string is defined here
1848 | DBGMSG(512, "HHCTN127D %4.4X:TCPNJE - select() timeout after %ld seconds %ld microseconds\n",
| ~~^
| |
| long int
| %d
Since the argument is apparently too short, it is easy to convert it to
a longer type. On some systems it may already be long int, so changing
the format string to %d is likely to be incorrect in such cases.
* Fix incorrect format string.
CC config.lo
In file included from hercules.h:104,
from config.c:20:
config.c: In function 'configure_cpu':
config.c:1079:57: warning: format '%d' expects argument of type 'int', but argument 8 has type 'long int' [-Wformat=]
1079 | WRMSG( HHC00111, "I", _POSIX_THREAD_CPUTIME );
| ^
msgenu.h:99:98: note: in definition of macro 'PFWRITEMSG'
99 | #define PFWRITEMSG( pan, f, fmt, ... ) fwritemsg( __FILE__, __LINE__, __FUNCTION__, pan, f, fmt, ## __VA_ARGS__ )
| ^~~
msgenu.h:108:36: note: in expansion of macro 'PWRITEMSG'
108 | #define LOGMSG( fmt, ... ) PWRITEMSG( WRMSG_NORMAL, fmt, ## __VA_ARGS__ )
| ^~~~~~~~~
msgenu.h:110:36: note: in expansion of macro 'LOGMSG'
110 | #define WRMSG( id, sev, ... ) LOGMSG( #id "%s " id "\n", sev, ## __VA_ARGS__ )
| ^~~~~~
config.c:1079:13: note: in expansion of macro 'WRMSG'
1079 | WRMSG( HHC00111, "I", _POSIX_THREAD_CPUTIME );
| ^~~~~
The `%d` comes from the definition of `HHC00111`:
`#define HHC00111 "Thread CPU Time IS available (_POSIX_THREAD_CPUTIME=%d)"`
and `_POSIX_THREAD_CPUTIME` comes from `<unistd.h>`:
`#define _POSIX_THREAD_CPUTIME 200112L`
https://pubs.opengroup.org/onlinepubs/9699919799/ defines it as "shall either be -1 or 200809L"
So NetBSD is a bit behind with the value, but it is correct that it is a long int.
* Fix incorrect SCANDIR_CONST_STRUCT_DIRENT for *BSD.
CC fillfnam.lo
fillfnam.c: In function 'tab_pressed':
fillfnam.c:146:32: warning: passing argument 3 of 'scandir' from incompatible pointer type [-Wincompatible-pointer-types]
146 | n = scandir(path, &namelist, filter, alphasort);
| ^~~~~~
| |
| int (*)(struct dirent *)
In file included from hstdinc.h:215,
from fillfnam.c:8:
/usr/include/dirent.h:112:5: note: expected 'int (*)(const struct dirent *)' but argument is of type 'int (*)(struct dirent *)'
112 | int (*)(const struct dirent *), int (*)(const struct dirent **,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
NetBSD defines `scandir` as
`int
scandir(const char *dirname, struct dirent ***namelist,
int (*select)(const struct dirent *),
int (*compar)(const struct dirent **, const struct dirent **)); `
The filter function is defined as
```
int filter(const struct dirent *ent)
int filter( struct dirent *ent)
```
SCANDIR_CONST_STRUCT_DIRENT in hostopts.h is set wrong.
Of course it would be better if this were checked by configure.
I also inspected the <dirent.h> from FreeBSD and OpenBSD and they also
have const.
* Undefined functions can't be inlined.
CC impl.lo
impl.c:798:20: warning: inline function 'z900_get_storage_key' declared but never defined
798 | extern inline BYTE z900_get_storage_key( U64 abs );
| ^~~~~~~~~~~~~~~~~~~~
impl.c:797:20: warning: inline function 's390_get_storage_key' declared but never defined
797 | extern inline BYTE s390_get_storage_key( U64 abs );
| ^~~~~~~~~~~~~~~~~~~~
impl.c:796:20: warning: inline function 's370_get_storage_key' declared but never defined
796 | extern inline BYTE s370_get_storage_key( U64 abs );
| ^~~~~~~~~~~~~~~~~~~~
* Fix multi-line comment.
CC dasdload.o
In file included from dasdload.c:31:
dasdload2.h: In function 'process_iebcopy_file':
dasdload2.h:2849:13: warning: multi-line comment [-Wcomment]
2849 | // "Input record: CCHHR[%04X%04X%02X] (TTR[%04X%02X]) kl[%d] dl[%d]\n" \
| ^
CC dasdload64.o
In file included from dasdload64.c:31:
dasdload2.h: In function 'process_iebcopy_file':
dasdload2.h:2849:13: warning: multi-line comment [-Wcomment]
2849 | // "Input record: CCHHR[%04X%04X%02X] (TTR[%04X%02X]) kl[%d] dl[%d]\n" \
| ^
* Simplify format strings and avoid warnings.
CC tfprint.o
In file included from hercules.h:104,
from tfprint.c:14:
tfprint.c: In function 'print_op_stor':
tfprint.c:1732:26: warning: '0' flag ignored with precision and '%X' gnu_printf format [-Wformat=]
1732 | FLOGMSG( stdout, "%sTranslation exception %04.4"PRIX16" (%s)\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
msgenu.h:99:98: note: in definition of macro 'PFWRITEMSG'
99 | #define PFWRITEMSG( pan, f, fmt, ... ) fwritemsg( __FILE__, __LINE__, __FUNCTION__, pan, f, fmt, ## __VA_ARGS__ )
|
^~~
tfprint.c:1732:9: note: in expansion of macro 'FLOGMSG'
1732 | FLOGMSG( stdout, "%sTranslation exception %04.4"PRIX16" (%s)\n",
| ^~~~~~~
tfprint.c:1753:13: warning: '0' flag ignored with precision and '%X' gnu_printf
format [-Wformat=]
1753 | "%02.2X%02.2X%02.2X%02.2X "
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
msgenu.h:208:70: note: in definition of macro 'MSGBUF'
208 | #define MSGBUF( _buf, ... ) snprintf(_buf, sizeof(_buf), ## __VA_ARGS__ )
| ^~~~~~~~~~~
and more similar warnings.
This seems to say that in the format string "%04.4X", the 0 is ignored
because it's filling with 0s already anyway due to the precision (.4).
Format string %045X prints the same as %4.45X and seems more reliable in
case older standards are used (which don't define a precision for the X
format). So I changed all the warned cases to the form %04X.
* Use TID_INT to scan for TID values.
Suggested by comment https://github.com/SDL-Hercules-390/hyperion/pull/574#issuecomment-1595924831 .
Just because SUPPORT for a given facility exists (i.e. the #define is defined at build time) does not necessarily mean the facility itself is ENABLED at runtime! Recall that facilities can be disabled or enabled at will during runtime! (i.e. when Hercules is powered on and the runtime architecture level is set before IPL)
Refer to section 6c. of our "Adding New z/Architecture Facilities to Hercules" README.
The 2 problems identified in Issue #369 for CTCE configurations are now corrected :
1. The "rport" parameter is now always taken into account when matching
incoming CTCE connections, and no longer ignored when "rdevnum" is specified.
2. The "rdevnum" when specified as "=" was not incremented correctly when the
"ldevnum.n" format was used to specify "n" multiple CTCE devices.
[skip travis]
(Skipping travis because this is just one of several commits in a long series of commits. The last commit in the series will allow travis to run.)
[skip travis]
(Skipping travis because this is just one of several commits in a long series of commits. The last commit in the series will allow travis to run.)
[skip travis]
Revert "3390 DASD CCW Command SNID (x'34') Correction for RESERVE/RELEASE"
This reverts commit 9fd1dfff4d.
Revert "(Oops!) I did accidentally change functionality! Sorry!"
This reverts commit cb24398570.
Revert "Clean up overall ARCH_DEP structure of hscmisc.c module:"
This reverts commit f99cae0938.
Revert "Suppress HHC00814I and HHC00809I for OSTAILOR VM"
This reverts commit 97ef4d5bce.
Revert "Fix comments to match current state of controversy"
This reverts commit 7aa3c4413a.
Revert "Revert "Fix minor bug in CDFTR/CXFTR instructions""
This reverts commit e4e60f37dc.
Revert "Fix minor bug in CDFTR/CXFTR instructions"
This reverts commit 0f382a7875.
Revert "Eliminate compiler warning."
This reverts commit a5ad6b0a22.
Revert "Add missing */ to facility 20 comment."
This reverts commit adfd31d280.
Revert "Update What's New [skip travis]"
This reverts commit 5b5cdf0249.
Revert "Fix z/VM guest arch switch bug identified in issue #295"
This reverts commit f5504fe407.
Revert "Update documentation. [skip travis]"
This reverts commit 8caa8b15d6.
Revert "Fix for IPL command without a LOADPARM (#296)"
This reverts commit 328e99a685.
Revert "(fix typo) [skip travis]"
This reverts commit 6665c1017a.
Revert "Update What's New and Release Notes web pages"
This reverts commit 21380cd537.
Revert "Cosmetic: remove change indicator comments"
This reverts commit 3ff73f53cb.
Revert "Cosmetic: DIAG = RS_a format."
This reverts commit 67bc1d46be.
Revert "Stop panel select watching logger pipe:"
This reverts commit bef8eb0012.
Revert "(missed one!) [skip travis]"
This reverts commit 017e4374b6.
Revert "Minor cosmetic inst format fixes"
This reverts commit c97e01a6e6.
Revert "Instruction decoders cleanup part 8: IBM formats:"
This reverts commit 977de05643.
Revert "CTCE v2 Circumventing VM/SP Problem and Minor Improvements"
This reverts commit 5080ee8059.
Revert "Fix incomplete network device group crash:"
This reverts commit 590623a729.
Revert "Workaround for VS2019 compiler bug:"
This reverts commit 3a94e280e9.
Revert "Documentation: clarify QETH statement "iface" parameter."
This reverts commit 216da217b6.
Revert "Disable DEBUG_FREESPACE build option:"
This reverts commit 68d91c0648.
Revert "Minor cosmetic + cosmetic typo fix"
This reverts commit e1cbea7326.
Revert "I/O interrupt tracing tweak:"
This reverts commit e004d298d6.
Revert "Cosmetic in preparation for next commit"
This reverts commit 456a0c4c95.
Revert "100% cosmetic: [skip travis]"
This reverts commit 5da6a86c89.
Revert "Cosmetic doc update to HERCLOGO readme [skip travis]"
This reverts commit 7efbcefe28.
Revert "Add dummy device to MSVC Windows build"
This reverts commit 91821019f2.
Revert "Cosmetic: reorg into alpha seq [skip travis]"
This reverts commit 382185ed78.
Revert "Chore: finalize dummy device skeleton"
This reverts commit 73a69e3d4c.
Revert "Fix : Updates to dummy device skeleton"
This reverts commit 9f4c91c352.
Revert "(cosmetic) [skip travis]"
This reverts commit 125c455cfb.
Revert "Instruction decoders cleanup part 7: delete unused IPRINT_FUNC"
This reverts commit fb6f3d5d97.
Revert "Instruction decoders cleanup part 7: delete unused decoders"
This reverts commit 9e8b0e1ca9.
Revert "Instruction decoders cleanup part 6: cosmetic:"
This reverts commit df8fd6e69a.
Revert "Fix: type in Makefile.am"
This reverts commit 73b3d56a31.
Revert "Updare Variuous anciliary files"
This reverts commit 49c3065a69.
Revert "Chore : tcpnje rewrite"
This reverts commit 011c66c778.
Revert "Add missing Vector Facility macros"
This reverts commit 515c428cb7.
Revert "Instruction decoders cleanup part 5: cosmetic:"
This reverts commit 94498258d5.
Revert "Instruction decoders cleanup part 4: fix RRD snafu:"
This reverts commit e899a610f0.
Revert "Instruction decoders cleanup parts 2 and 3:"
This reverts commit aa24c44b27.
Revert "Bug in SSF instruction decoder. Closes #287."
This reverts commit 2b6b899232.
Revert "100% cosmetic (comment tweaks only)"
This reverts commit c78a12e512.
Revert "Fix careless typo in RXXx_BC_DECODER (Sorry!)"
This reverts commit 8094e6506f.
Revert "(Oops!) decoders must be re-#included each time!"
This reverts commit 7089de5adc.
Revert "Instruction decoders cleanup part 1:"
This reverts commit c3e431bcf8.
Revert "Fix TCP/NJE clang warnings + Windows support"
This reverts commit a73daadd59.
Revert "Add TCP/NJE readme file"
This reverts commit fc1c87c86b.
Revert "Chore: Add TCP/NJE support - Experimental"
This reverts commit a3355dbcd1.
Revert "Document yet more Hercules related support groups"
This reverts commit bdf46c225e.
Revert "(yet more html doc tweaking)"
This reverts commit 7c29139e10.
Revert "Replace Yahoo URLs with Groups.IO URLs instead."
This reverts commit e0fb59a379.
Revert "Replace Yahoo URLs with Groups.IO URLs instead."
This reverts commit b75b31ed16.
Revert "Copyright 2020: only what's visible to the user"
This reverts commit c2d6f83184.
Revert "CTCE v2 Corrections and Improvements - Documentation Update"
This reverts commit 020e4a1545.
Revert "(update 4.3 progress)"
This reverts commit 1a1d40db4c.
Revert "Fix sockdev "bind lock" initialization bug:"
This reverts commit 99504d3c11.
Revert "Use set_lock_name to assign better device lock names"
This reverts commit 8018f7796a.
Revert "Tighter lock init/destroy validation"
This reverts commit 63797f60c6.
Revert "Track lock creation"
This reverts commit 39782c0b83.
Revert "Cosmetic removal of superfluous location argument"
This reverts commit 0cead3d18a.
Revert "Yet more cosmetic renames"
This reverts commit fbd4aeeb43.
Revert "Cosmetic struct field renames"
This reverts commit aba323706a.
Revert "Fix minor memory leak in destroy_lock"
This reverts commit 7fc2064c97.
Revert "Fix some minor compiler warnings:"
This reverts commit 9f70f79fdc.
Revert "CTCE v2 Corrections and Improvements - Documentation Update"
This reverts commit a575524d9b.
Revert "CTCE Corrections and Improvements"
This reverts commit d2921aa00c.
Revert "CTCE devices need dev->hnd->halt to always be called"
This reverts commit 8ac28edf9d.
Revert "Support for new DEVLIST and CTC DEBUG command options"
This reverts commit 5ce233e0af.
Revert "(yet another typo)"
This reverts commit 66b91d26a1.
Revert "(typo!)"
This reverts commit 4c4b9c0f30.
Revert "Define framework for new facilities."
This reverts commit ad640b125b.
Revert "New README to explain how to add a new Facility to Hercules"
This reverts commit 9bc2adeb1f.
Revert "Still trying to fix travis-ci build failures!"
This reverts commit e36d1a8f3e.
Revert "(cosmetic cleanup):"
This reverts commit 95b91e8032.
Revert "Update *nix autoconf files due to last few commits"
This reverts commit 28d4f4b0b3.
Revert "Various NetBSD/FreeBSD portability issues (#279):"
This reverts commit 56206efcfa.
Revert "Support perl being in a different place:"
This reverts commit 2f51035436.
Revert "Update documentation regarding ongoing development"
This reverts commit 57d0e0d869.
Revert "Fix minor message number typo"
This reverts commit 2e093718be.
Revert "Minor bootstrap crash handler tweak:"
This reverts commit bec283f0b3.
Revert "Restore watchdog support:"
This reverts commit 81957ddfef.
Revert "hthreads set/get thread name and lock name support"
This reverts commit f56bfb8352.
Revert "New '$test deadlock' testing command"
This reverts commit 6690b9207b.
Revert "Restore DIAG FF8 and FFC for testing purposes"
This reverts commit 002e0602dd.
Revert "Set sysblk.ipled flag on restart command too"
This reverts commit 866bda176e.
Revert "(minor html edit)"
This reverts commit caaa3dcbc0.
Revert "Update *nix autoconf files due to last few commits"
This reverts commit 23c7f6cf8d.
Revert "Treat NetBSD same as FreeBSD per github issue #279"
This reverts commit 2ff0c0d97c.
Revert "Fix another portability issues identified in github issue #279"
This reverts commit 51a24502d2.
Revert "Support for NetBSD 3 arguments pthread_setname_np"
This reverts commit edf7171bfb.
Revert "Fix some portability issues identified in github issue #279"
This reverts commit c740f710be.
Revert "Restore erroneously removed printer immediate CCW opcodes tables:"
This reverts commit 9f2c5606ff.
Revert "TRY TO FIX Travis.CI failure"
This reverts commit c67ac2ee50.
Revert "TRY TO FIX Travis.CI failure"
This reverts commit e5b477b34b.
The ENABLE_CONFIG_INCLUDE, ENABLE_SYSTEM_SYMBOLS, ENABLE_BUILTIN_SYMBOLS build options are no longer optional build options. This reduces #if defined() tests and makes the code clearer and easier to maintain. (I doubt anyone actually builds special builds of Hercules without these build options defined anyway.)
See gitHub Issue #119: "DISCUSS: user ability to set internal thread priorities s/b rescinded".
Hercules will still set the priorities of its various internal threads, but will no longer allow the user to override or change the relative priorities of its internal threads via the xxxxPRIO configuration file statements and commands. Such statements will now cause a "deprecated and ignored" warning to be issued.
* Fixes for Apple MacOS platform
* Fix for Absence of pthread_getcpuclockid on Apple MacOS platform
* Fixes for CTCE device as found on Apple MacOS platform
* Fix for Absence of ifr_hwaddr on Apple MacOS platform
* Temporary fix to bypass a build problem on Apple MacOS platform
Jan's bug in cpu.c and sie.c are BOTH *almost* 16.5 years old (10 months short of a true day one bug). My identical bug in config.c and facility.c are both only a few months old. We've been lucky so far due to the code in featchk.h (lines 623-649) that always builds 370 first, 390 second and 900 last. But technically there *shouldn't* be any reason why they couldn't be built in *any* order. Hercules should *not* be dependent on the build order of the various architectures it supports. The code this patch fixes however, *was* coded to be dependent on the build order. Hence the need to fix it.
This commit not only resolves issue #94 "ARCHLVL S/370 MAINSIZE issues" but also completes resolution for issue #92 "Changing ARCHLVL does not do sysclear or sysreset clear" as well.