Skip to content

Commit

Permalink
Update NEWS and spec file for errata release 2.0.0-1.12
Browse files Browse the repository at this point in the history
Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
  • Loading branch information
kvanhees committed Feb 27, 2023
1 parent 76f1b57 commit 397b9a7
Show file tree
Hide file tree
Showing 2 changed files with 104 additions and 1 deletion.
82 changes: 82 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,3 +1,85 @@
2.0.0-1.12 (Feb 27th, 2023)
---------------------------

Twelfth errata of the standalone userspace implementation.

** This is a pre-release with limited functionality. **

New features:

- The bcopy() subroutine no longer enforces that its first argument (source
address) cannot be an alloca()'d memory region. While this restriction is
documented, it was never enforced in DTrace. There is no practicl reason
for ahving this restriction.

- The clear() and tracemem() actions have been implemented.

- The 'switchrate' and 'aggrate' options has been implemented.

- The cpc provider has been implemented.

- The copyout() and copyoutstr() subroutines have been implemented.

- The uregs[] built-in variable has been implemented.

Bugfixes:

- The maximum strtab size has been increased to SSIZE_MAX.

- Probe argument information will only be retrieved once per probe.

- Handling string values in alloca()'d memory has been fixed.

- The basename(), dirname(), strchr(), strrchr(), inet_ntoa() subroutines
have been updated to fully support using arbitrary address pointers.

- The return value of copyin() will now be a valid offset into scratchmem
(native representation of a pointer to alloca()'d memory).

- The arg0 and arg1 probe arguments for profile-* and tick-* probes have been
corrected. (The arg2 argument is still unimplemented.)

- The evaluation order of arguments to bcopy() has been corrected.

- Runtime bounds checking has been implemented for scalar array access.

Internal changes:

- Selection of the correct arch-dependent asm include hierarchy for building
the precompiled BPF function library has been corrected.

- A few potentially unsafe calls to printf-style functions have been fixed.

- The mapage for dtrace has been moved to section 8 (System Management
Climit ommands).

- The error handling mechanism between libdtrace and consumer front-ends has
been amended to allow error reporting for non-probing related issues.

- The copyinstr() subroutine has been updated to make use of the temporary
string mechanism.

- The tracking of pointers to alloca()'d memory and pointer to DTrace managed
memory has been improved, and explicit tests for it have been added to the
testsuite.

- The code generator will use indirect load instructions for pointers to
alloca()'d and DTrace managed memory for efficiency and to enable the BPF
verifier to perform access checks.

Testsuite changes:

- The copyin*() tests are now more robust with the use of a distinct trigger.

- Various tests have been moved from XFAIL to PASS status to reflect the
implementation of new features and in view of some bug fixes.

- Various tests were improved.

- Various new tests were added.

Known problems:

2.0.0-1.11.1 (Nov 9th, 2022)
----------------------------

Expand Down
23 changes: 22 additions & 1 deletion dtrace.spec
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ Conflicts: systemtap-sdt-devel
Provides: systemtap-sdt-devel
Summary: DTrace user interface.
Version: 2.0.0
Release: 1.11.1%{?dist}
Release: 1.12%{?dist}
Source: dtrace-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExclusiveArch: x86_64 aarch64
Expand Down Expand Up @@ -245,6 +245,27 @@ fi
%{_libdir}/dtrace/testsuite

%changelog
* Mon Feb 27 2023 Kris Van Hees <kris.vna.hees@oracle.com> - 2.0.0-1.12
- Fix evaluation order of bcopy() arguments and lift non-alloca restriction
on the source address. (Eugene Loh, Kris Van Hees)
- Implement actions: clear(), tracemem(). (Kris Van Hees, Eugene Loh)
- Implement subroutines: copyout(), copyinstr(). (Kris Van Hees, Eugene Loh)
- Implement options: switchrate, aggrate.
- Implement provider: cpc. (Eugene Loh)
- Implement built-in variable: uregs. (Eugene Loh)
- Increase strtab maximum size.
- Support using indirect load instructions for pointers to alloca()'d and
DTrace managed memory. (Kris Van Hees, Eugene Loh)
- Fix arg0 and arg1 for profile-* and tick-* probes. (Eugene Loh)
- Implement runtime bounds checking for scalar array access. (Eugene Loh)
- Updated manpage and moved to dtrace.8.
- Support arbitrary address pointers for basename(), dirname(), strchr(),
strrchr(), and inet_ntoa(). (Eugene Loh), [Orabug: 34857846]
- Add runtime bounds checking for scalar array access. (Eugene Loh)
[Orabug: 35045463]
- Various testsuite fixes and improvements. [Orabug: 34829509]
- Various code improvements. [Orabug: 34829509]

* Tue Nov 08 2022 Kris Van Hees <kris.vna.hees@oracle.com> - 2.0.0-1.11.1
- Support both libfuse 2 and libfuse 3.

Expand Down

0 comments on commit 397b9a7

Please sign in to comment.