. 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.
Provides PPA (Perform Processor Assist) support for TXF by:
1. Conditionally suppressing interrupts during transaction retry
2. Conditionally decreasing frequency of timer interrupts during transaction retry (by automatically increasing the active "timerint" value) during periods of high transactional load (as controlled by the new timer.c "rubato_thread").
based on the amount of assistance requested by the PPA instruction's transactional-abort-assist operand-1 value.
The old watchdog thread detected hung CPUs and sent a sigabend signal that was caught and threw a machine check for the malfunctioning CPU in order to try and allow the guest to continue running. This was removed months ago (April 2019) by commit b76163a664.
The new watchdog thread not only detects and reports hung CPUs as before, but now also FIRST detects and reports deadlocked threads too, and does NOT attempt to allow the guest to continue (does NOT cause a Machine Check). Instead, it creates a crash dump for offline post mortem analysis.
[skip travis]
[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 old watchdog thread detected hung CPUs and sent a sigabend signal that was caught and threw a machine check for the malfunctioning CPU in order to try and allow the guest to continue running. This was removed months ago (April 2019) by commit b76163a664.
The new watchdog thread not only detects and reports hung CPUs as before, but now also FIRST detects and reports deadlocked threads too, and does NOT attempt to allow the guest to continue (does NOT cause a Machine Check). Instead, it creates a crash dump for offline post mortem analysis.
SIGABEND handler replaced with bootstrap.c crash handler which reports the crash and creates a dump (i.e. core file) if ulimit or /etc/security/limits.conf unlimited. No more "machine check due to host error"!
Microsoft's MSVC compiler uses LLP64, where int, long and long int are always 32-bits, even for 64-bit builds. Most other systems however, use LP64 where int, long and long int 32-bits only for 32-bit builds but are 64-bits for 64-bit builds:
Type ILP64 LP64 LLP64
int 64 32 32
long 64 64 32
This causes problems when printing thread ids since pthread_t is typedefed as unsigned long int, which on Windows is always 32-bits regardless of whether you're doing a 32- or 64-bit build, but on non-Windows platforms that use e.g. GCC to build with, they're different, thereby sometimes causing a crash when a thread-id is printed using a printf formatting pattern that doesn't match the argument's actual size.
Note: the crash only sometimes occurs when the printf format string contains a %s format specification following somewhere after a TIDPAT format specification.
Note: this is the first (i.e. part 2a) of Part 2 of the locking/threading rework effort: hthreads restructuring. Part 2b will be the hthreads.c code necessary to detect threads exiting while still holding locks (i.e. abandoned locks).
Maintain lock ownership and report who owns the lock when an obtain_lock fails.
Part 2 will be the maintaining of a locks list and automatic reporting of abandoned locks (threads exiting while holding a lock(s)).
Part 3 will be adding support for Robust Mutexes, including to fthreads.
FishHang was useful during development of fthreads but has not been needed for so many years and so has FINALLY been deleted. Sorry it took me so long to do it.