This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug runtime/16719] systemtap runs hold vmlinux file descriptor open
- From: "jlebon at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sourceware dot org
- Date: Wed, 19 Mar 2014 15:48:13 +0000
- Subject: [Bug runtime/16719] systemtap runs hold vmlinux file descriptor open
- Auto-submitted: auto-generated
- References: <bug-16719-6586 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=16719
Jonathan Lebon <jlebon at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #7 from Jonathan Lebon <jlebon at redhat dot com> ---
(In reply to Frank Ch. Eigler from comment #6)
> Perhaps we could simply experiment with reverting
> commit 68983551, and measure the impact.
Reverted in commit ccf2c92:
This patch is mostly a revert of commit 68983551.
The 'kernel_dwfl' and 'user_dwfl' references kept for caching purposes
in setupdwfl.cxx were causing the Dwfl object to never actually be
released, which in turn resulted in multiple files remaining open beyond
pass-3.
File handles should no longer be kept in pass-4 and beyond.
Before:
$ stap --poison-cache -ve 'probe vfs.read { next }'
Pass 1: parsed user script and 101 library script(s) using
212036virt/29184res/2948shr/26956data kb, in 90usr/0sys/97real ms.
Pass 2: analyzed script: 1 probe(s), 0 function(s), 3 embed(s), 0 global(s)
using 504868virt/163624res/7840shr/155388data kb, in 1130usr/120sys/1251real
ms.
Pass 3: translated to C into
"/tmp/stapWIjCOB/stap_b776860cb323d1a9b9f26cb39841546d_1467_src.c" using
497132virt/161336res/6564shr/155388data kb, in 0usr/0sys/3real ms.
Pass 4: compiled C into "stap_b776860cb323d1a9b9f26cb39841546d_1467.ko" in
3940usr/570sys/4657real ms.
Pass 5: starting run.
^Z
[1]+ Stopped stap --poison-cache -ve 'probe vfs.read { next }'
$ bg
[1]+ stap --poison-cache -ve 'probe vfs.read { next }' &
$ lsof -p $! | grep vmlinux
stap 7209 jlebon mem REG 253,1 160421398 2114776
/usr/lib/debug/lib/modules/3.13.6-100.fc19.x86_64/vmlinux
stap 7209 jlebon 6r REG 253,1 160421398 2114776
/usr/lib/debug/lib/modules/3.13.6-100.fc19.x86_64/vmlinux
$
Now:
$ stap --poison-cache -ve 'probe vfs.read { next }'
Pass 1: parsed user script and 101 library script(s) using
212028virt/29180res/2932shr/26956data kb, in 90usr/10sys/96real ms.
Pass 2: analyzed script: 1 probe(s), 0 function(s), 3 embed(s), 0 global(s)
using 340460virt/158680res/3896shr/155388data kb, in 1140usr/100sys/1254real
ms.
Pass 3: translated to C into
"/tmp/staplx1y4R/stap_ac2e5551f4b4ea2432683c2aeb641232_1467_src.c" using
340460virt/158992res/4208shr/155388data kb, in 0usr/0sys/3real ms.
Pass 4: compiled C into "stap_ac2e5551f4b4ea2432683c2aeb641232_1467.ko" in
3990usr/530sys/4661real ms.
Pass 5: starting run.
^Z
[1]+ Stopped stap --poison-cache -ve 'probe vfs.read { next }'
$ bg
[1]+ stap --poison-cache -ve 'probe vfs.read { next }' &
$ lsof -p $! | grep vmlinux
$
--
You are receiving this mail because:
You are the assignee for the bug.