VMENTRY, so clear it ourselves, to avoid uselessly flushing the guest
TLB. While here also fix the processing of EFER-induced flushes, they
shouldn't be delayed.
final file marks by opening and immediately closing the device
in O_WRONLY mode. That code has not been working since around 1998.
It can now be enabled with options ST_SUNCOMPAT.
Fix inconsistent/incomplete file mark handling to conform again
to mtio(4) at close(2) time. This was necessary as the PREVENT/ALLOW
bracket was reduced from a whole mount session to cover only the
open(2)/close(2) time on ~2002-03-22. The rationale was to allow
robots and humans to change the media during a mount session.
Unfortunately this lead to file marks being written to potentially other
media at the beginning on drives that used the two file marks as EOM
pattern. In order for that to happen the media had to be removed after
data and at most one file mark had been written before removal.
The mount error message has been clarified and a warning about
potential data/file mark lossage on UNIT ATTENTION
during an active mount session with unfinished file marks has been
added.
While there, fix, but disable the commented SUN compatibility to write
final file marks by opening and immediately closing the device
in O_WRONLY mode. That code has not been working since around 1998.
It can now be enabled with options ST_SUNCOMPAT.
Additionally debug output coverage has been extended.
- nvpair_create_stringv: free the temporary string; this fix affects
nvlist_add_stringf() and nvlist_add_stringv().
- nvpair_remove_nvlist_array (NV_TYPE_NVLIST_ARRAY case): free the chain
of nvpairs (as resetting it prevents nvlist_destroy() from freeing it).
Note: freeing the chain in nvlist_destroy() is not sufficient, because
it would still leak through nvlist_take_nvlist_array(). This affects
all nvlist_*_nvlist_array() users.
Found by clang/gcc ASAN. These fixes have been contributed to the
upstream (FreeBSD) repository.
on sparc and sparc64, don't remove .eh_frame section. it leads
to failure as something is referenced, and objcopy ends up
emitting a broken binary that can't be run -- it attempts to
load at va=0, beyond having missing referenced data.
also, on sparc64 also don't remove .note.netbsd.mcmodel.
the former should be revised when we can avoid it.
subsystem into a separate namespace where it can co-exist with the
native equivalent in PVHVM mode.
On PV, we alias and export the native symbols - this means that
although the namespace is different, the semantics must be identical.
Eg: xen_intr_establish_xname() vs. intr_establish_xname().
The specific functions we need in PVHVM are:
- spllower, xen_spllower (for native as well as XEN event spl
despatch/defer)
- xen_disable_intr()/xen_enable_intr() ,
x86_disable_intr()/x86_enable_intr()
- xen_read_psl()/xen_write_psl(),
x86_read_psl()/x86_write_psl()
- intr_establish() et. al, xen_intr_establish() et. al.
This gives us the ability to manage Paravirtualised drivers such as
xbd(4) as well as fully emulated ones such as wd(4)., for eg
New tests:
- trace_thread1
- trace_thread2
- trace_thread3
- trace_thread4
These tests verify _lwp_create(2) and _lwp_exit(2) events. They are
currently skipped as not reliable.
flag to cvs.texinfo, so the installed man and info documentation match
here. This makes cvs.1 auto-generable from cvs.texinfo again, which I
plan to leverage with further additions later.
Avoid open coding snprintf return value checking and introduce a
helper functions that always ensures string termination instead,
suggested by christos.
XEN - common sources required for baseline XEN support.
XENPV - sources required for support of XEN in PV mode.
XENPVHVM - sources required for support for XEN in HVM mode.
XENPVH - sources required for support for XEN in PVH mode.
The siginfo group of ptrace(2) tests has been replaced with new individual
tests or merged into existing ones. This is the last siginfo* test that
has been renamed.
New name: traceme_exec.
Drop test siginfo1 as duplicated with earlier tests.
Rework and rename siginfo2 and siginfo3 into a single test body.
New tests:
- siginfo_set_unmodified (replaces siginfo2)
- siginfo_set_faked (replaces siginfo3)
All new tests pass.
"remove" commands. These were never present upstream on the branch
NetBSD imported, but were subsequently added on other branches (against
upstream's HEAD: cvs.1: r. 1.53 & cvs.texinfo: r. 1.697).
XXX While cvs.texinfo is supposed to be used to auto-generate cvs.1,
that isn't safe at present, because content has been added direct to
cvs.1 in NetBSD's tree.