Accepting request 495010 from Kernel:kdump

- Update to 1.6.1 (FATE#322011).
  * Enhance support for aarch64
  * Enhance support for ppc64
  * Support kernels up to 4.8
- Drop upstreamed patch
  * makedumpfile-_count-_refcount-rename.patch 
- Merge with updates on SLE12 SP2 (FATE#318012, bsc#992885,
  bsc#999869).

- Update to 1.6.0 (FATE#320955).
  * support for aarch64 (FATE#318444)
  * Enable compressed dump formats for Xen (FATE#316467).
  o ability to filter Xen Dom0 dumps (bnc#864910, bnc#829646).
- enable snappy compression (FATE#315726).
  o Fix a typo in README file.
  o Code Cleanup

OBS-URL: https://build.opensuse.org/request/show/495010
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/makedumpfile?expand=0&rev=62
This commit is contained in:
Dominique Leuenberger 2017-05-20 08:09:59 +00:00 committed by Git OBS Bridge
commit 96d5117dfa
6 changed files with 25 additions and 116 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e3147abc52df2ceac1e9affef45bf37e2f2e1d9979bc94a761ee11e4044072ac
size 175080

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0b6e73106998670407887de9e1a505b3a2dbb2fb517a4b968a665eda8fb097ce
size 176228

View File

@ -1,102 +0,0 @@
From: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: Fri, 17 Jun 2016 18:41:26 +0900
Subject: [PATCH v2] Support _count -> _refcount rename in struct page
Patch-mainline: Released-1-6-1?
Git-commit: 2c21d4656e8d3c2af2b1e14809d076941ae69e96
_count member was renamed to _refcount in linux commit 0139aa7b7fa12
("mm: rename _count, field of the struct page, to _refcount") and this
broke makedumpfile. The reason for making the change was to find all users
accessing it directly and not through the recommended API. I tried
suggesting to revert the change but failed, I see no other choice than to
start supporting both _count and _refcount in makedumpfile.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
makedumpfile.c | 26 +++++++++++++++++++++-----
makedumpfile.h | 3 ++-
2 files changed, 23 insertions(+), 6 deletions(-)
--- a/makedumpfile.c
+++ b/makedumpfile.c
@@ -1579,7 +1579,14 @@ get_structure_info(void)
*/
SIZE_INIT(page, "page");
OFFSET_INIT(page.flags, "page", "flags");
- OFFSET_INIT(page._count, "page", "_count");
+ OFFSET_INIT(page._refcount, "page", "_refcount");
+ if (OFFSET(page._refcount) == NOT_FOUND_STRUCTURE) {
+ info->flag_use_count = TRUE;
+ OFFSET_INIT(page._refcount, "page", "_count");
+ } else {
+ info->flag_use_count = FALSE;
+ }
+
OFFSET_INIT(page.mapping, "page", "mapping");
OFFSET_INIT(page._mapcount, "page", "_mapcount");
OFFSET_INIT(page.private, "page", "private");
@@ -2044,7 +2051,7 @@ get_mem_type(void)
if ((SIZE(page) == NOT_FOUND_STRUCTURE)
|| (OFFSET(page.flags) == NOT_FOUND_STRUCTURE)
- || (OFFSET(page._count) == NOT_FOUND_STRUCTURE)
+ || (OFFSET(page._refcount) == NOT_FOUND_STRUCTURE)
|| (OFFSET(page.mapping) == NOT_FOUND_STRUCTURE)) {
ret = NOT_FOUND_MEMTYPE;
} else if ((((SYMBOL(node_data) != NOT_FOUND_SYMBOL)
@@ -2151,7 +2158,10 @@ write_vmcoreinfo_data(void)
* write the member offset of 1st kernel
*/
WRITE_MEMBER_OFFSET("page.flags", page.flags);
- WRITE_MEMBER_OFFSET("page._count", page._count);
+ if (info->flag_use_count)
+ WRITE_MEMBER_OFFSET("page._count", page._refcount);
+ else
+ WRITE_MEMBER_OFFSET("page._refcount", page._refcount);
WRITE_MEMBER_OFFSET("page.mapping", page.mapping);
WRITE_MEMBER_OFFSET("page.lru", page.lru);
WRITE_MEMBER_OFFSET("page._mapcount", page._mapcount);
@@ -2491,7 +2501,13 @@ read_vmcoreinfo(void)
READ_MEMBER_OFFSET("page.flags", page.flags);
- READ_MEMBER_OFFSET("page._count", page._count);
+ READ_MEMBER_OFFSET("page._refcount", page._refcount);
+ if (OFFSET(page._refcount) == NOT_FOUND_STRUCTURE) {
+ info->flag_use_count = TRUE;
+ READ_MEMBER_OFFSET("page._count", page._refcount);
+ } else {
+ info->flag_use_count = FALSE;
+ }
READ_MEMBER_OFFSET("page.mapping", page.mapping);
READ_MEMBER_OFFSET("page.lru", page.lru);
READ_MEMBER_OFFSET("page._mapcount", page._mapcount);
@@ -5615,7 +5631,7 @@ __exclude_unnecessary_pages(unsigned lon
pcache = page_cache + (index_pg * SIZE(page));
flags = ULONG(pcache + OFFSET(page.flags));
- _count = UINT(pcache + OFFSET(page._count));
+ _count = UINT(pcache + OFFSET(page._refcount));
mapping = ULONG(pcache + OFFSET(page.mapping));
if (OFFSET(page.compound_order) != NOT_FOUND_STRUCTURE) {
--- a/makedumpfile.h
+++ b/makedumpfile.h
@@ -1100,6 +1100,7 @@ struct DumpInfo {
int flag_nospace; /* the flag of "No space on device" error */
int flag_vmemmap; /* kernel supports vmemmap address space */
int flag_excludevm; /* -e - excluding unused vmemmap pages */
+ int flag_use_count; /* _refcount is named _count in struct page */
unsigned long vaddr_for_vtop; /* virtual address for debugging */
long page_size; /* size of page */
long page_shift;
@@ -1483,7 +1484,7 @@ struct size_table {
struct offset_table {
struct page {
long flags;
- long _count;
+ long _refcount;
long mapping;
long lru;
long _mapcount;

View File

@ -1 +1 @@
addFilter("devel-file-in-non-devel-package .*/usr/share/makedumpfile-1\.6\.0/eppic_scripts/.*\.c")
addFilter("devel-file-in-non-devel-package .*/usr/share/makedumpfile-1\.6\.1/eppic_scripts/.*\.c")

View File

@ -1,3 +1,15 @@
-------------------------------------------------------------------
Thu May 11 15:32:13 UTC 2017 - ptesarik@suse.com
- Update to 1.6.1 (FATE#322011).
* Enhance support for aarch64
* Enhance support for ppc64
* Support kernels up to 4.8
- Drop upstreamed patch
* makedumpfile-_count-_refcount-rename.patch
- Merge with updates on SLE12 SP2 (FATE#318012, bsc#992885,
bsc#999869).
-------------------------------------------------------------------
Tue Jul 12 15:56:04 UTC 2016 - ptesarik@suse.com
@ -21,7 +33,7 @@ Tue Jul 12 10:08:41 UTC 2016 - ptesarik@suse.com
-------------------------------------------------------------------
Tue Jul 12 09:13:25 UTC 2016 - ptesarik@suse.com
- Update to 1.6.0
- Update to 1.6.0 (FATE#320955).
* Exclude page structures of non-dumped pages.
- Drop upstreamed patch
* Looking-for-page.compound_order-compound_dtor-.patch
@ -45,8 +57,9 @@ Fri Jul 8 05:57:04 UTC 2016 - mkubecek@suse.cz
Sun Feb 14 08:11:59 UTC 2016 - mpluskal@suse.com
- Update to 1.5.9
* support for aarch64
* support for aarch64 (FATE#318444)
* Support kernels up to 4.1
* Enable compressed dump formats for Xen (FATE#316467).
- Drop upstreamed patch
* makedumpfile-add-aarch64.diff
- Use url for source
@ -114,7 +127,7 @@ Wed May 7 14:00:57 UTC 2014 - ptesarik@suse.cz
o support for Linux 3.13
o include sample eppic scripts
o eppic: Add support for module data structures
o ability to filter Xen Dom0 dumps
o ability to filter Xen Dom0 dumps (bnc#864910, bnc#829646).
- makedumpfile-fix-sprintf-append.patch: now upstream
- makedumpfile-kernel-3.12-supported.patch: now upstream
@ -122,7 +135,7 @@ Wed May 7 14:00:57 UTC 2014 - ptesarik@suse.cz
-------------------------------------------------------------------
Fri Mar 21 09:50:53 UTC 2014 - ptesarik@suse.cz
- enable snappy compression
- enable snappy compression (FATE#315726).
-------------------------------------------------------------------
Tue Feb 25 11:53:37 UTC 2014 - ptesarik@suse.cz
@ -318,8 +331,8 @@ Fri Feb 20 09:59:02 CET 2009 - bwalle@suse.de
- Update to 1.3.2
o Add --dump-dmesg option (Dumping dmesg buffer from /proc/vmcore
to a file)
  o Fix a typo in README file.
  o Code Cleanup
o Fix a typo in README file.
o Code Cleanup
-------------------------------------------------------------------
Wed Dec 03 19:59:35 CET 2008 - bwalle@suse.de

View File

@ -1,7 +1,7 @@
#
# spec file for package makedumpfile
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -29,7 +29,7 @@
%endif
Name: makedumpfile
Version: 1.6.0
Version: 1.6.1
Release: 0
Summary: Partial kernel dump
License: GPL-2.0
@ -38,7 +38,6 @@ Url: https://sourceforge.net/projects/makedumpfile/
Source: https://sourceforge.net/projects/makedumpfile/files/makedumpfile/%{version}/%{name}-%{version}.tar.gz
Source99: %{name}-rpmlintrc
Patch0: %{name}-coptflags.diff
Patch1: %{name}-_count-_refcount-rename.patch
Patch2: %{name}-override-libtinfo.patch
BuildRequires: libdw-devel
BuildRequires: libebl-devel
@ -68,7 +67,6 @@ via gdb or crash utility.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%build