Ian Campbell
2013-Oct-31 16:52 UTC
[PATCH OSSTEST 0/3 v2] Stash debug symbols for build results
These are handy when debugging stack traces etc. The resulting xen-syms.gz is ~1M and the resulting vmlinux.gz is ~13M on ARM. I assume x86 will be ballpark similar... Ian.
Ian Campbell
2013-Oct-31 16:53 UTC
[PATCH OSSTEST v2 1/3] ts-kernel-build: Enable CONFIG_DEBUG_INFO_REDUCED
This makes the resulting vmlinux file with debug symbols much more manageable without compromising the usefulness for converting addresses into line numbers etc. --- ts-kernel-build | 1 + 1 file changed, 1 insertion(+) diff --git a/ts-kernel-build b/ts-kernel-build index 5630dd7..824dc9e 100755 --- a/ts-kernel-build +++ b/ts-kernel-build @@ -208,6 +208,7 @@ setopt CONFIG_VIDEO n setopt CONFIG_BOOTSPLASH n setopt CONFIG_DEBUG_INFO y +setopt CONFIG_DEBUG_INFO_REDUCED y setopt CONFIG_XEN_KBDDEV_FRONTEND y -- 1.7.10.4
Ian Campbell
2013-Oct-31 16:53 UTC
[PATCH OSSTEST v2 2/3] TestSupport: Add interface to compress stash files
Use it in ts-logs-capture --- Osstest/TestSupport.pm | 8 +++++++- ts-logs-capture | 5 +---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm index f4ec055..dba5cef 100644 --- a/Osstest/TestSupport.pm +++ b/Osstest/TestSupport.pm @@ -66,7 +66,7 @@ BEGIN { serial_fetch_logs propname_massage - get_stashed open_unique_stashfile + get_stashed open_unique_stashfile compress_stashed dir_identify_vcs build_clone built_stash hg_dir_revision git_dir_revision vcs_dir_revision store_revision store_vcs_revision @@ -843,6 +843,12 @@ sub get_stashed ($$) { return "$c{Stash}/$oflight/$ojob/$path"; } +sub compress_stashed($) { + my ($path) = @_; + my $r= system ''gzip'',''-9vf'',''--'',"$stash/$path"; + die "$r $!" if $r; +} + #---------- other stuff ---------- sub host_reboot ($) { diff --git a/ts-logs-capture b/ts-logs-capture index 2dd95ea..a0bd936 100755 --- a/ts-logs-capture +++ b/ts-logs-capture @@ -61,10 +61,7 @@ END target_getfile_root($lho,60, $logfile,"$stash/$llogfile"); if ($logfile !~ m/\.gz$/) { stat("$stash/$llogfile") or die "$stash/$llogfile $!"; - if ((stat _)[7] > 100000) { - my $r= system ''gzip'',''-9vf'',''--'',"$stash/$llogfile"; - die "$r $!" if $r; - } + compress_stashed($llogfile) if(stat _)[7] > 100000; } 1; }) { -- 1.7.10.4
Ian Campbell
2013-Oct-31 16:53 UTC
[PATCH OSSTEST v2 3/3] Stash debug symbols for build results
Specifically xen-syms (<1M compressed) and the vmlinux (~13M compressed) files. --- Osstest/TestSupport.pm | 18 +++++++++++++++++- ts-kernel-build | 2 ++ ts-xen-build | 2 ++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm index dba5cef..1ac4cf7 100644 --- a/Osstest/TestSupport.pm +++ b/Osstest/TestSupport.pm @@ -67,7 +67,8 @@ BEGIN { propname_massage get_stashed open_unique_stashfile compress_stashed - dir_identify_vcs build_clone built_stash + dir_identify_vcs build_clone built_stash built_stash_file + built_compress_stashed hg_dir_revision git_dir_revision vcs_dir_revision store_revision store_vcs_revision @@ -1050,6 +1051,21 @@ END store_runvar("path_$item", $stashleaf); } +sub built_stash_file ($$$$) { + my ($ho, $builddir, $item, $fname) = @_; + my $build= "build"; + my $stashleaf= "$build/$item"; + ensuredir("$stash/$build"); + target_getfile($ho, 300, + "$builddir/$fname", + "$stash/$stashleaf"); +} + +sub built_compress_stashed($) { + my ($path) = @_; + compress_stashed("build/$path"); +} + sub vcs_dir_revision ($$$) { my ($ho,$builddir,$vcs) = @_; no strict qw(refs); diff --git a/ts-kernel-build b/ts-kernel-build index 824dc9e..babd261 100755 --- a/ts-kernel-build +++ b/ts-kernel-build @@ -322,3 +322,5 @@ if ($r{tree_linuxfirmware}) { fwinstall(); } built_stash($ho, $builddir, ''dist'', ''kerndist''); +built_stash_file($ho, $builddir, ''vmlinux'', ''linux/vmlinux''); +built_compress_stashed(''vmlinux''); diff --git a/ts-xen-build b/ts-xen-build index 8a905f5..5f544df 100755 --- a/ts-xen-build +++ b/ts-xen-build @@ -198,6 +198,8 @@ sub stash () { "xen-unstable/dist/${part}install", "${part}dist"); } + built_stash_file($ho, $builddir, "xen-syms", "xen-unstable/xen/xen-syms"); + built_compress_stashed("xen-syms"); } sub checkversions () { -- 1.7.10.4
Ian Jackson
2013-Oct-31 16:56 UTC
Re: [PATCH OSSTEST 0/3 v2] Stash debug symbols for build results
Ian Campbell writes ("[PATCH OSSTEST 0/3 v2] Stash debug symbols for build results"):> These are handy when debugging stack traces etc. > > The resulting xen-syms.gz is ~1M and the resulting vmlinux.gz is ~13M on > ARM. I assume x86 will be ballpark similar...All three: Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> I think this and the other stuff can safely be rebased on top of current "pretest" (ie staging) and pushed right away. Would you like to do that ? Ian.
Ian Campbell
2013-Oct-31 16:58 UTC
Re: [PATCH OSSTEST 0/3 v2] Stash debug symbols for build results
On Thu, 2013-10-31 at 16:56 +0000, Ian Jackson wrote:> Ian Campbell writes ("[PATCH OSSTEST 0/3 v2] Stash debug symbols for build results"): > > These are handy when debugging stack traces etc. > > > > The resulting xen-syms.gz is ~1M and the resulting vmlinux.gz is ~13M on > > ARM. I assume x86 will be ballpark similar... > > All three: > Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> > > I think this and the other stuff can safely be rebased on top of > current "pretest" (ie staging) and pushed right away. Would you like > to do that ?Sure. I''ll look at it some time this evening hopefully. Ian.
Ian Campbell
2013-Oct-31 17:53 UTC
Re: [PATCH OSSTEST 0/3 v2] Stash debug symbols for build results
On Thu, 2013-10-31 at 16:56 +0000, Ian Jackson wrote:> Ian Campbell writes ("[PATCH OSSTEST 0/3 v2] Stash debug symbols for build results"): > > These are handy when debugging stack traces etc. > > > > The resulting xen-syms.gz is ~1M and the resulting vmlinux.gz is ~13M on > > ARM. I assume x86 will be ballpark similar... > > All three: > Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> > > I think this and the other stuff can safely be rebased on top of > current "pretest" (ie staging) and pushed right away. Would you like > to do that ?Done. Pushed these: $ git log --oneline a949ddb..79b27b7 79b27b7 PDU/xenuse: Support xenuse on machine not locked by current user 84be2dc Stash debug symbols for build results 9791747 TestSupport: Add interface to compress stash files f1eace5 ts-kernel-build: Enable CONFIG_DEBUG_INFO_REDUCED 768a930 Debian: Allow per-host additional u-boot script commands f6a55e3 arm boot fixes and improvements