Oracle Linux 6202 Published by

A dtrace bug fix update has been released for Oracle Linux 9.

El-errata: ELBA-2022-10021 Oracle Linux 9 dtrace bug fix update

Oracle Linux Bug Fix Advisory ELBA-2022-10021

The following updated rpms for Oracle Linux 9 have been uploaded to the Unbreakable Linux Network:



Description of changes:

- Support both libfuse 2 and libfuse 3.

- Add initial support for USDT. (Nick Alcock, Kris Van Hees)
- Add support for aggregation keys. (Eugene Loh, Kris Van Hees)
- Add support for copyin(), copyinto(), and copyinstr().
- Add support for built-in variable args[] and sdt probe arg types.
- Fix arg handling for various probes. (Eugene Loh)
- Add basic support for setopt().
- Add -xlockmem, with useful error message. (Eugene Loh)
- Fix -xverbose, -xcpp, and -xctfpath
- Fix handling of multiple args after --. (Nick Alcock)
- Have the pid provider ignore compiler-generated internal function names.
- Fix various bugs with typecasting and internal integer storage. (Eugene Loh)
- Fix access to scalars in kernel space.
- Fix libproc search of rtld_global due to glibc changes. (Nick Alcock)
[Orabug: 32856318]
- Truly decouple per-CPU BPF agg maps with a "map of maps."
- Unused dual aggregation copies (DT_AGG_NUM_COPIES) have been removed.
(Eugene Loh)
- Various testsuite fixes and improvements. [Orabug: 34251899]
- Various code improvements. [Orabug: 34251899]

- Add support for associative arrays.
- Add support for allcoa() and bcopy(). (Nick Alcock)
- Add support for inet_ntoa(), progenyof(), getmajor(), getminor(),
mutex_owned(), mutex_owner(), mutex_type_adaptive(), mutex_type_spin(),
rw_read_held(), rw_write_held(), and rw_iswriter(). (Eugene Loh)
- Improved fault handling. (Nick Alcock, Kris Van Hees)
- Various disassembler improvements, esp. annotations.
- Strings are no longer stored using a length prefix.
- The trace() action now supports arrays, structs, and unions.
- Various testsuite fixes and improvements. [Orabug: 34112342]
- Various code improvements. [Orabug: 34112342]

- Add support for UEK7. [Orabug: 33806867]

- Add support for strtok(). (Eugene Loh)
- Implement TLS (thread-local storage) variables.
- Add support for basename(), dirname(). (Eugene Loh)
- Generic hash table improvements and consistent use of htabs. (Nick Alcock)
- CTF improvements in view of better kernel support. (Nick Alcock)
- Add support for ftruncate(). (Eugene Loh)
- Add support for rand(). (Eugene Loh)
- Fix string constant handling for strings longer than strsize.
- Optimization of substr(), strjoin(), and storing strings in the trace buffer.
- Various string handling fixes and improvements. (Eugene Loh, Kris Van Hees)
[Orabug: 33651682]
- Various testsuite fixes and improvements. [Orabug: 33651682]
- Various code improvements. [Orabug: 33651682]

- Support running dtrace under valgrind. (Nick Alcock) [Orabug: 32760574]
- Implementation of speculative tracing. (Nick Alcock)
- Add support for string comparison. (Eugene Loh)
- Add support for strchr(), strrchr(), index(), rindex(), strstr(), lltostr().
(Eugene Loh)
- Add support for symbols in compressed kernel modules. (Nick Alcock)
- Add support for htonl, htonll, htons, ntohl, ntohll, ntohs. (Eugene Loh)
- Various testsuite fixes and improvements. [Orabug: 33474154]
- Various code improvements. [Orabug: 33474154]

- Implement argument retrieval for SDT probes.
- Introduce 'bpflog' runtime option to request BPF verifier log.
- Implementation improvements for memry copy operations.
- Fix type alignment handling for enums.
- Fix ERROR-in-BEGIN probe handling.
- Transition from variable-length string size to 2-byte string size.
- Fix size of string data in the trace output buffer.
- Fix data size for value copy.
- Add support for strjoin() subroutine.
- Add support for substr() subroutine.

- Consolidated development of newly ported features. [Orabug: 33037106]
- Implement built-in variables: probeprov, probemod, probefunc, probename.
- Implement built-in variables: caller, stackdepth, ucaller, ustackdepth,
errno, walltimestamp. (Eugene Loh)
- Implement actions: stack(), ustack(). (Eugene Loh)
- Implement subroutine: strlen().
- Implement option: -Z (partial). (Eugene Loh)
- Added support for string constants and string values.
- Added support for strings to trace().
- Fixed storage size determination for global and local variables.
- Improved storage layout for global and local variables.
- Mark aggregation actions as non-data recording actions. (Eugene Loh)
- Load string constant table into the 'strtab' BPF map.
- Load probe description data into the 'probes' BPF map.
- Consolidate all string hash functions into a single hash function.
- Implement variable length integer support.
- Store the length of each string as a variable length integer inline with its
character stream.
- Improve memcpy() internal BPF function.
- Testsuite improvements. (Eugene Loh)

- Memory corruption fix in pid probe discovery.

- Implement the ERROR probe. [Orabug: 32749498]
- Add checks in BPF programs for division by zero and NULL pointer dereference.
[Orabug: 32749498]
- Implement the pid provider for userspace function boundary tracing.
[Orabug: 32749504]
- Implement the -w option to explicitly allow destructive actions.
[Orabug: 31632678]
- Add support in translators for more than two kernel variants. (Nick Alcock)
[Orabug: 32748968]
- Switch from condition variable to eventfd for process death notifications.
[Orabug: 32125018]
- Implement normalize() and denormalize() actions.
- Reworking of kernel tracepoint based providers. [Orabug: 32125018]
- Reworking of global and local variable storage to allow for values sizes
beyond 8 bytes. (Eugene Loh) [Orabug: 32125018]
- Implement -xbpflogsize option. (Eugene Loh) [Orabug: 32125018]
- Improvements to -xdisasm support. (Eugene Loh) [Orabug: 32125018]
- Fix bitfield operations. (Eugene Loh) [Orabug: 32125018]
- Sample scripts for building DTrace on Ubuntu. (David McLean)
- Coding style updates. (Eugene Loh)
- Testsuite updates.

- Implement aggregation support code for both producer and consumer.
[Orabug: 32254734]
- Implement aggregation functions: count(), lquantize().
- Implement aggregation functions: avg(), llquantize(), quantize().
(Eugene Loh)
- Implement aggregation functions: max(), min(), stddev(), sum().
(David McLean)
- Implement the printa() action.
- Rework BPF code generation to use emit*() macros.
- Fix bitwise negation. (Eugene Loh) [Orabug: 32125018]
- Fix reporting when all quantize() data is in the last bin. (Eugene Loh)
[Orabug: 32148161]
- Load pre-compiled BPF functions even if they do not have relocations.
(Eugene Loh)
- Testsuite updates.
- Fix END probe execution when consumer stops the producer.
- Force use of bash as shell.