1

SystemTap release 4.9

 1 year ago
source link: https://lwn.net/ml/linux-kernel/ZEw5pdqi7y%[email protected]/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

SystemTap release 4.9

Thread information [Search the linux-kernel archive]

[No responses]
From:  "Frank Ch. Eigler" <fche-AT-elastic.org>
To:  systemtap-AT-sourceware.org
Subject:  SystemTap release 4.9
Date:  Fri, 28 Apr 2023 17:24:53 -0400
Message-ID:  <ZEw5pdqi7y/[email protected]>
Cc:  linux-kernel-AT-vger.kernel.org, lwn-AT-lwn.net
The SystemTap team announces release 4.9

Enhancements to this release include: Jupyter web-based interactive
frontend, language-server-protocol backend


= Where to get it

  https://sourceware.org/systemtap/ - our project page
  https://sourceware.org/systemtap/ftp/releases/
  https://koji.fedoraproject.org/koji/packageinfo?packageID...
  git tag release-4.9 (commit ebb424eee5599fc)

  There have been over 70 commits since the last release.
  There have been 10 bugs fixed / features added since the last release.


= SystemTap backend changes

* Corrected handling of DWARF5 implicit-pointer and entry-value data
  and bit-fields.

* Corrected accidental runtime double-hit of some types of synthetic
  probes.

* Improved kernel backtrace repeated artifacts.


= SystemTap frontend (stap) changes

* Added a Jupyter based front-end to stap.  This may be invoked via a
  container - or built locally (likely via pip3 downloads).  The user
  interface becomes an interactive notebook in a web browser.  See the
  "stap-jupyter" man page.

* Added a "--language-server" option to stap, which switches it into
  an LSP server on stdin/stdout.  This allows users of a variety of
  editors to trigger symbol-completions and similar operations in
  context.  This code includes a small reusable jsonrpc server library
  implementation in C++.

* Improved documentation generation scripts, so the website doc
  snapshots can be fresher.

* Improved deterministic buildability of dtrace-flavoured .h/.c file
  generation.
  
* Temporarily disabled $context-variable liveness safety checks on
  retpoline kernels.


= SystemTap tapset changes

* Python3 version range compatibility much improved.

* Updated for NFS, VFS and other kernel changes.

* Updated system call name tables.


= SystemTap sample scripts

* All 180+ examples can be found at https://sourceware.org/systemtap/examples/

* The new Jupyter front-end includes a default notebook that includes
  several scripts and fragments, equipped with webby eyecandy!

* The livepatch.stp sample script for CVE band-aids is better
  documented.
  

= Examples of tested kernel versions

  3.10.0 (RHEL7)
  4.18.0 (RHEL8 + CentOS Stream 8 x86_64, aarch64, ppc64le, s390x)
  5.14.0 (RHEL9 + CentOS Stream 9 x86_64, aarch64, ppc64le, s390x)
  5.19.16 (Fedora 36 x86_64)
  6.2.11 (Fedora 37 x86_64)
  6.3.0-rc (Fedora rawhide x86_64)


= Known issues with this release

- There are intermittent buffer transmission failures for high-trace-rate
  scripts.  Bulk mode (stap -b) helps. (see PR29108)

- There are known issues on kernel 5.10+ after adapting to set_fs()
  removal, with some memory accesses that previously returned valid data
  instead returning -EFAULT. (see PR26811)


= Contributors for this release

Aaron Merey, Frank Ch. Eigler, *Gioele Barabucci, Mark Wielaard,
Martin Cermak, Ryan Goldberg, Serhei Makarov, Stan Cox, William Cohen

Special thanks to new contributors, marked with '*' above.


= Bugs fixed for this release <https://sourceware.org/PR#####>

29801	--monitor mode gets 2 hits to procfs("monitor_control").write for every 1 write
29838	DWARF5 DW_OP_implicit_pointer and DW_OP_entry_value unhandled
29676	wildcard function/symbol expansion inconsistent in debuginfo vs nondebuginfo cases
29837	kernel build compiler warning makes testsuite fail
29832   probe python.function.entry does not get hits (while .return does)
29766	kernel.function("__set_page_dirty_buffers") not found in tapset/linux/vfs.stp
29037	Systemtap unable to find struct bitfield members for gcc11 compiled code
30123	bitfield.exp fails with fresh kernels
29824	BUG: using smp_processor_id() in preemptible [00000000] code: stapio/58567
30372	dyninst liveness analysis with retpoline kernels slow
30396	kernel 6.3.* objtool/ibt warnings during pass 4



About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK