Bug 11954

Summary: sysprof tracer ABI regression in 2.6.28rc1
Product: Other Reporter: Eric Anholt (eric)
Component: OtherAssignee: other_other
Status: CLOSED CODE_FIX    
Severity: normal CC: mingo, rjw
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.28rc3 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 11808    
Attachments: fix the abi regression

Description Eric Anholt 2008-11-04 22:14:46 UTC
Latest working kernel version: 2.6.27
Earliest failing kernel version: 2.6.28-rc1
Distribution: deb
Hardware Environment: x86
Software Environment:
Problem Description:
In 777e208d40d0953efc6fb4ab58590da3f7d8f02d we changed from outputting
field->cpu (a char) to iter->cpu (unsigned int), increasing the resulting
structure size by 3 bytes.  sysprof built for 2.6.27's sysprof tracer fails for 2.6.28

(worse than a rebuild, since ftrace doesn't give us exported headers of structures to consume!)

Steps to reproduce:
Comment 1 Eric Anholt 2008-11-04 22:15:09 UTC
Created attachment 18683 [details]
fix the abi regression
Comment 2 Ingo Molnar 2008-11-05 01:09:57 UTC
> In 777e208d40d0953efc6fb4ab58590da3f7d8f02d we changed from 
> outputting field->cpu (a char) to iter->cpu (unsigned int), 
> increasing the resulting structure size by 3 bytes.  sysprof built 
> for 2.6.27's sysprof tracer fails for 2.6.28

it's in debugfs, so not really considered an ABI - sysprof for a 
specific kernel version should go hand in hand with that kernel source 
- at least until the framework stabilizes enough. But the fix looks 
simple enough.

	Ingo
Comment 3 Rafael J. Wysocki 2008-11-10 12:31:43 UTC
Handled-By : Eric Anholt <eric@anholt.net>
Patch : http://bugzilla.kernel.org/attachment.cgi?id=18683&action=view
Comment 4 Rafael J. Wysocki 2008-11-16 11:21:48 UTC
Fixed by commit 072ba49838b42c873c496d72c91bb237914cf3b6.