Bug 512478 - ext4 tracepoints can't be used by systemtap
Summary: ext4 tracepoints can't be used by systemtap
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 12
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Eric Sandeen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-07-17 21:10 UTC by Josh Stone
Modified: 2010-05-05 17:17 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-05-05 17:17:55 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Josh Stone 2009-07-17 21:10:33 UTC
Description of problem:
kernel-devel includes the tracepoint definitions for ext4 in "include/trace/events/ext4.h", but that file tries to include several relative files that aren't included in kernel-devel, "../../../fs/ext4/ext4.h" and "../../../fs/ext4/mballoc.h".  Thus, the ext4 tracepoints can't be used by systemtap.

Version-Release number of selected component (if applicable):
kernel-2.6.31-0.67.rc2.git9.fc12.x86_64
kernel-devel-2.6.31-0.67.rc2.git9.fc12.x86_64

How reproducible:
always

Steps to Reproduce:
1. stap -l 'kernel.trace("*")' -vvvv
  
Actual results:
[...]
In file included from /tmp/stapBpLq47/tracequery/tracequery.c:15:
include/trace/events/ext4.h:8:35: error: ../../../fs/ext4/ext4.h: No such file or directory
include/trace/events/ext4.h:9:38: error: ../../../fs/ext4/mballoc.h: No such file or directory
In file included from /tmp/stapBpLq47/tracequery/tracequery.c:15:
include/trace/events/ext4.h:410: warning: ‘struct ext4_prealloc_space’ declared inside parameter list
include/trace/events/ext4.h:410: warning: its scope is only this definition or declaration, which is probably not what you want
include/trace/events/ext4.h:410: warning: ‘struct ext4_allocation_context’ declared inside parameter list
include/trace/events/ext4.h:438: warning: ‘struct ext4_prealloc_space’ declared inside parameter list
include/trace/events/ext4.h:438: warning: ‘struct ext4_allocation_context’ declared inside parameter list
include/trace/events/ext4.h:466: warning: ‘struct ext4_prealloc_space’ declared inside parameter list
include/trace/events/ext4.h:466: warning: ‘struct ext4_allocation_context’ declared inside parameter list
include/trace/events/ext4.h:493: warning: ‘struct ext4_prealloc_space’ declared inside parameter list
include/trace/events/ext4.h:493: warning: ‘struct ext4_allocation_context’ declared inside parameter list
include/trace/events/ext4.h:558: warning: ‘struct ext4_allocation_request’ declared inside parameter list
include/trace/events/ext4.h:600: warning: ‘struct ext4_allocation_request’ declared inside parameter list


Expected results:
stap should list all of the available tracepoints, include those in ext4.

Comment 1 Josh Stone 2009-07-22 19:02:14 UTC
stap now works around the problem -- it will skip the broken ext4 header so that the other tracepoints are still usable.  See:
http://sourceware.org/bugzilla/show_bug.cgi?id=10424

It would still be nice to have usable ext4 tracepoints though.  I think either trace/events/ext4.h needs to remove its ../../.. includes, or else the kernel-devel packages need to also grab those ext4-internal headers.

Comment 2 Josh Stone 2009-09-19 00:13:28 UTC
Kernel commit 3661d286 (post 2.6.31) removes the relative includes, and I've confirmed that this enables SystemTap to use the ext4 tracepoints.  Please consider including that simple patch in rawhide.

Comment 3 Bug Zapper 2009-11-16 11:01:03 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 4 Eric Sandeen 2010-05-05 16:46:41 UTC
Josh, I apologize for not seeing this bug earlier.  Everything should be copacetic in F12, F13, and rawhide now, yes?

If so we can close this CURRENTRELEASE I guess.

Comment 5 Josh Stone 2010-05-05 17:17:55 UTC
You're right, updated F12 is fine, as well as F13 and rawhide.  Thanks!


Note You need to log in before you can comment on or make changes to this bug.