From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755118Ab3CEHGT (ORCPT ); Tue, 5 Mar 2013 02:06:19 -0500 Received: from fgwmail6.fujitsu.co.jp ([192.51.44.36]:50259 "EHLO fgwmail6.fujitsu.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755057Ab3CEHGQ (ORCPT ); Tue, 5 Mar 2013 02:06:16 -0500 From: HATAYAMA Daisuke Subject: [PATCH v2 14/20] elf: introduce NT_VMCORE_PAD type To: vgoyal@redhat.com, ebiederm@xmission.com, cpw@sgi.com, kumagai-atsushi@mxc.nes.nec.co.jp, lisa.mitchell@hp.com, heiko.carstens@de.ibm.com, akpm@linux-foundation.org Cc: kexec@lists.infradead.org, linux-kernel@vger.kernel.org Date: Sat, 02 Mar 2013 17:37:09 +0900 Message-ID: <20130302083709.31252.77794.stgit@localhost6.localdomain6> In-Reply-To: <20130302083447.31252.93914.stgit@localhost6.localdomain6> References: <20130302083447.31252.93914.stgit@localhost6.localdomain6> User-Agent: StGIT/0.14.3 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The NT_VMCORE_PAD type is introduced to make both crash_notes buffer and vmcoreinfo_note buffer satisfy mmap()'s page-size boundary requirement by filling them with this note type. The purpose of this type is just to align the buffer in page-size boundary; it has no meaning in contents, which are fully filled with zero. This note type belongs to "VMCOREINFO" name space and the type in this name space is 7. The reason why the numbers from 1 to 5 is not chosen is that for the ones from 1 to 4, there are the corresponding note types using the same number in "CORE" name space, and crash utility and makedumpfile don't distinguish note types by name space at all; for the remaining 5, this has somehow not been used since v2.4.0 kernel despite the fact that NT_AUXV is defined as 6. It looks that it avoids some dependency to 5. Here simply 5 is not chosen for conservative viewpoint. By this change, gdb and binutils work well without any change, but makedumpfile and crash utility need their changes to distinguish two note types in "VMCOREINFO" name space. Signed-off-by: HATAYAMA Daisuke --- include/uapi/linux/elf.h | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index b869904..9753e4c 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -402,6 +402,7 @@ typedef struct elf64_shdr { * Notes exported from /proc/vmcore, belonging to "VMCOREINFO" name. */ #define NT_VMCORE_DEBUGINFO 0 /* vmcore system kernel's debuginfo */ +#define NT_VMCORE_PAD 7 /* vmcore padding of note segments */ /* Note header in a PT_NOTE section */ typedef struct elf32_note { From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from fgwmail6.fujitsu.co.jp ([192.51.44.36]) by merlin.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1UClx3-0006ya-BF for kexec@lists.infradead.org; Tue, 05 Mar 2013 07:06:18 +0000 Received: from m4.gw.fujitsu.co.jp (unknown [10.0.50.74]) by fgwmail6.fujitsu.co.jp (Postfix) with ESMTP id C3FBA3EE0C2 for ; Tue, 5 Mar 2013 16:06:15 +0900 (JST) Received: from smail (m4 [127.0.0.1]) by outgoing.m4.gw.fujitsu.co.jp (Postfix) with ESMTP id AC1C145DE4F for ; Tue, 5 Mar 2013 16:06:15 +0900 (JST) Received: from s4.gw.fujitsu.co.jp (s4.gw.fujitsu.co.jp [10.0.50.94]) by m4.gw.fujitsu.co.jp (Postfix) with ESMTP id 90C5E45DE50 for ; Tue, 5 Mar 2013 16:06:15 +0900 (JST) Received: from s4.gw.fujitsu.co.jp (localhost.localdomain [127.0.0.1]) by s4.gw.fujitsu.co.jp (Postfix) with ESMTP id 72D0F1DB8049 for ; Tue, 5 Mar 2013 16:06:15 +0900 (JST) Received: from m1001.s.css.fujitsu.com (m1001.s.css.fujitsu.com [10.240.81.139]) by s4.gw.fujitsu.co.jp (Postfix) with ESMTP id 1C3921DB803E for ; Tue, 5 Mar 2013 16:06:15 +0900 (JST) From: HATAYAMA Daisuke Subject: [PATCH v2 14/20] elf: introduce NT_VMCORE_PAD type Date: Sat, 02 Mar 2013 17:37:09 +0900 Message-ID: <20130302083709.31252.77794.stgit@localhost6.localdomain6> In-Reply-To: <20130302083447.31252.93914.stgit@localhost6.localdomain6> References: <20130302083447.31252.93914.stgit@localhost6.localdomain6> MIME-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "kexec" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: vgoyal@redhat.com, ebiederm@xmission.com, cpw@sgi.com, kumagai-atsushi@mxc.nes.nec.co.jp, lisa.mitchell@hp.com, heiko.carstens@de.ibm.com, akpm@linux-foundation.org Cc: kexec@lists.infradead.org, linux-kernel@vger.kernel.org The NT_VMCORE_PAD type is introduced to make both crash_notes buffer and vmcoreinfo_note buffer satisfy mmap()'s page-size boundary requirement by filling them with this note type. The purpose of this type is just to align the buffer in page-size boundary; it has no meaning in contents, which are fully filled with zero. This note type belongs to "VMCOREINFO" name space and the type in this name space is 7. The reason why the numbers from 1 to 5 is not chosen is that for the ones from 1 to 4, there are the corresponding note types using the same number in "CORE" name space, and crash utility and makedumpfile don't distinguish note types by name space at all; for the remaining 5, this has somehow not been used since v2.4.0 kernel despite the fact that NT_AUXV is defined as 6. It looks that it avoids some dependency to 5. Here simply 5 is not chosen for conservative viewpoint. By this change, gdb and binutils work well without any change, but makedumpfile and crash utility need their changes to distinguish two note types in "VMCOREINFO" name space. Signed-off-by: HATAYAMA Daisuke --- include/uapi/linux/elf.h | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index b869904..9753e4c 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -402,6 +402,7 @@ typedef struct elf64_shdr { * Notes exported from /proc/vmcore, belonging to "VMCOREINFO" name. */ #define NT_VMCORE_DEBUGINFO 0 /* vmcore system kernel's debuginfo */ +#define NT_VMCORE_PAD 7 /* vmcore padding of note segments */ /* Note header in a PT_NOTE section */ typedef struct elf32_note { _______________________________________________ kexec mailing list kexec@lists.infradead.org http://lists.infradead.org/mailman/listinfo/kexec