From ae7c5e791837611da31ff73787e2a7daaef8ec9e Mon Sep 17 00:00:00 2001 From: Petr Machata Date: Mon, 24 Sep 2012 16:16:27 +0200 Subject: [PATCH] Test elfutils output of VMCOREINFO note. The test file is partial kdump image, with only headers and notes left in. Signed-off-by: Petr Machata --- tests/ChangeLog | 7 ++ tests/Makefile.am | 5 +- tests/run-readelf-vmcoreinfo.sh | 114 ++++++++++++++++++++++++++++++++ tests/testfile62.bz2 | Bin 0 -> 3506 bytes 4 files changed, 124 insertions(+), 2 deletions(-) create mode 100755 tests/run-readelf-vmcoreinfo.sh create mode 100644 tests/testfile62.bz2 diff --git a/tests/ChangeLog b/tests/ChangeLog index 88a33b99c..b2f6e4af5 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,10 @@ +2012-09-24 Petr Machata + + * testfile62.bz2: New testfile. + * run-readelf-vmcoreinfo.sh: New test. + * Makefile.am (TEST): Add run-readelf-vmcoreinfo.sh. + (EXTRA_DIST): Add testfile62.bz2 and run-readelf-vmcoreinfo.sh. + 2012-09-18 Petr Machata * testfile61.bz2: New testfile. diff --git a/tests/Makefile.am b/tests/Makefile.am index bee497378..e67a853e1 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -84,7 +84,7 @@ TESTS = run-arextract.sh run-arsymtest.sh newfile test-nlist \ run-dwarf-getstring.sh run-rerequest_tag.sh run-typeiter.sh \ run-readelf-d.sh run-readelf-gdb_index.sh run-unstrip-n.sh \ run-low_high_pc.sh run-macro-test.sh run-elf_cntl_gelf_getshdr.sh \ - run-test-archive64.sh + run-test-archive64.sh run-readelf-vmcoreinfo.sh if !STANDALONE check_PROGRAMS += msg_tst md5-sha1-test @@ -176,7 +176,8 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh \ run-macro-test.sh testfile-macinfo.bz2 testfile-macros.bz2 \ run-elf_cntl_gelf_getshdr.sh \ run-test-archive64.sh testarchive64.a.bz2 \ - testfile60.bz2 testfile61.bz2 + testfile60.bz2 testfile61.bz2 \ + run-readelf-vmcoreinfo.sh testfile62.bz2 installed_TESTS_ENVIRONMENT = libdir=$(DESTDIR)$(libdir) \ bindir=$(DESTDIR)$(bindir) \ diff --git a/tests/run-readelf-vmcoreinfo.sh b/tests/run-readelf-vmcoreinfo.sh new file mode 100755 index 000000000..da361c85a --- /dev/null +++ b/tests/run-readelf-vmcoreinfo.sh @@ -0,0 +1,114 @@ +#! /bin/sh +# Copyright (C) 2012 Red Hat, Inc. +# This file is part of elfutils. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# elfutils is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +. $srcdir/test-subr.sh + +testfiles testfile62 + +testrun_compare ../src/readelf -n testfile62 <<\EOF + +Note segment of 2104 bytes at offset 0x158: + Owner Data size Type + CORE 336 PRSTATUS + info.si_signo: 0, info.si_code: 0, info.si_errno: 0, cursig: 0 + sigpend: <> + sighold: <> + pid: 3519, ppid: 0, pgrp: 0, sid: 0 + utime: 0.000000, stime: 0.000000, cutime: 0.000000, cstime: 0.000000 + orig_rax: -1, fpvalid: 0 + r15: 662 r14: 4 + r13: -2119649152 r12: 0 + rbp: 0xffff880067e39e48 rbx: 99 + r11: -131940469531936 r10: -2124150080 + r9: -131940469531936 r8: 0 + rax: 16 rcx: 7813 + rdx: 0 rsi: 0 + rdi: 99 rip: 0xffffffff812ba86f + rflags: 0x0000000000010096 rsp: 0xffff880067e39e48 + fs.base: 0x00007f95a7b09720 gs.base: 0x0000000000000000 + cs: 0x0010 ss: 0x0018 ds: 0x0000 es: 0x0000 fs: 0x0000 gs: 0x0000 + CORE 336 PRSTATUS + info.si_signo: 0, info.si_code: 0, info.si_errno: 0, cursig: 0 + sigpend: <> + sighold: <> + pid: 0, ppid: 0, pgrp: 0, sid: 0 + utime: 0.000000, stime: 0.000000, cutime: 0.000000, cstime: 0.000000 + orig_rax: -1, fpvalid: 0 + r15: 0 r14: 0 + r13: 1348173392195389970 r12: 1 + rbp: 0xffff88007a829e48 rbx: 16 + r11: -131940468065880 r10: 435505529489 + r9: 158960 r8: 0 + rax: 16 rcx: 1 + rdx: 0 rsi: 3 + rdi: -131939339960320 rip: 0xffffffff810118bb + rflags: 0x0000000000000046 rsp: 0xffff88007a829e38 + fs.base: 0x0000000000000000 gs.base: 0x0000000000000000 + cs: 0x0010 ss: 0x0018 ds: 0x0000 es: 0x0000 fs: 0x0000 gs: 0x0000 + VMCOREINFO 1366 : 0 + OSRELEASE=2.6.35.11-83.fc14.x86_64 + PAGESIZE=4096 + SYMBOL(init_uts_ns)=ffffffff81a4c5b0 + SYMBOL(node_online_map)=ffffffff81b840b0 + SYMBOL(swapper_pg_dir)=ffffffff81a42000 + SYMBOL(_stext)=ffffffff81000190 + SYMBOL(vmlist)=ffffffff81db07e8 + SYMBOL(mem_section)=ffffffff81dbab00 + LENGTH(mem_section)=4096 + SIZE(mem_section)=32 + OFFSET(mem_section.section_mem_map)=0 + SIZE(page)=56 + SIZE(pglist_data)=81664 + SIZE(zone)=1792 + SIZE(free_area)=88 + SIZE(list_head)=16 + SIZE(nodemask_t)=64 + OFFSET(page.flags)=0 + OFFSET(page._count)=8 + OFFSET(page.mapping)=24 + OFFSET(page.lru)=40 + OFFSET(pglist_data.node_zones)=0 + OFFSET(pglist_data.nr_zones)=81472 + OFFSET(pglist_data.node_start_pfn)=81496 + OFFSET(pglist_data.node_spanned_pages)=81512 + OFFSET(pglist_data.node_id)=81520 + OFFSET(zone.free_area)=112 + OFFSET(zone.vm_stat)=1328 + OFFSET(zone.spanned_pages)=1704 + OFFSET(free_area.free_list)=0 + OFFSET(list_head.next)=0 + OFFSET(list_head.prev)=8 + OFFSET(vm_struct.addr)=8 + LENGTH(zone.free_area)=11 + SYMBOL(log_buf)=ffffffff81a532a8 + SYMBOL(log_end)=ffffffff81d0bc50 + SYMBOL(log_buf_len)=ffffffff81a532a4 + SYMBOL(logged_chars)=ffffffff81d0bd70 + LENGTH(free_area.free_list)=5 + NUMBER(NR_FREE_PAGES)=0 + NUMBER(PG_lru)=5 + NUMBER(PG_private)=11 + NUMBER(PG_swapcache)=16 + SYMBOL(phys_base)=ffffffff81a4a010 + SYMBOL(init_level4_pgt)=ffffffff81a42000 + SYMBOL(node_data)=ffffffff81b80df0 + LENGTH(node_data)=512 + CRASHTIME=1348173392 + +EOF + +exit 0 diff --git a/tests/testfile62.bz2 b/tests/testfile62.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..8a42cf66462791f26f2e2845e8e1cd59b8cfbf4f GIT binary patch literal 3506 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