public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: "Ken'ichi Ohmichi" <oomichi@mxs.nes.nec.co.jp>
Cc: lkml <linux-kernel@vger.kernel.org>,
	kexec-ml <kexec@lists.infradead.org>,
	Neil Horman <nhorman@redhat.com>, Vivek Goyal <vgoyal@in.ibm.com>,
	Bernhard Walle <bwalle@suse.de>, Don Zickus <dzickus@redhat.com>,
	Dan Aloni <da-x@monatomic.org>
Subject: Re: [PATCH 0/3] vmcoreinfo support for dump filtering
Date: Wed, 22 Aug 2007 15:40:36 -0700	[thread overview]
Message-ID: <20070822154036.1bd2f360.akpm@linux-foundation.org> (raw)
In-Reply-To: <20070822210838oomichi@mail.jp.nec.com>

On Wed, 22 Aug 2007 21:08:38 +0900
"Ken'ichi Ohmichi" <oomichi@mxs.nes.nec.co.jp> wrote:

> 
> Hi Andrew,
> 
> This patch set frees the restriction that makedumpfile users should
> install a vmlinux file (including the debugging information) into
> each system.
> 
> makedumpfile command is the dump filtering feature for kdump.
> It creates a small dumpfile by filtering unnecessary pages for the
> analysis. To distinguish unnecessary pages, it needs a vmlinux file
> including the debugging information. These days, the debugging package
> becomes a huge file, and it is hard to install it into each system.
> 
> To solve the problem, kdump developers discussed it at lkml and kexec-ml.
> As the result, we reached the conclusion that necessary information
> for dump filtering (called "vmcoreinfo") should be embedded into the
> first kernel file and it should be accessed through /proc/vmcore
> during the second kernel.
> (http://www.uwsg.iu.edu/hypermail/linux/kernel/0707.0/1806.html) 
> 
> Dan Aloni created the patch set for the above implementation.
> (http://www.uwsg.iu.edu/hypermail/linux/kernel/0707.1/1053.html)
> 
> And I updated it for multi architectures and memory models.
> (http://lists.infradead.org/pipermail/kexec/2007-August/000479.html)

so...  will this permit us to generate kdump files whcih don't have any
pagecache or anonymous memory in them?


> +void vmcoreinfo_append_str(const char *fmt, ...);

This should have suitable __attribute__s so that the compiler can check its
use.    See many examples in include/linux/kernel.h, around line 120.

> +/* vmcoreinfo stuff */
> +unsigned char vmcoreinfo_data[VMCOREINFO_BYTES];
> +u32 vmcoreinfo_note[VMCOREINFO_NOTE_SIZE/4];
> +unsigned int vmcoreinfo_size = 0;

Please always run scripts/checkpatch.pl against your diffs.

> +unsigned int vmcoreinfo_max_size = sizeof(vmcoreinfo_data);

unsigned int = size_t?  Perhaps vmcoreinfo_max_size should have size_t
type?

> +void crash_save_vmcoreinfo(void)
> +{
> +	u32 *buf;
> +
> +	if (!vmcoreinfo_size)
> +		return;
> +
> +	vmcoreinfo_append_str("CRASHTIME=%d", xtime.tv_sec);

open-coded access to xtime probably isn't appropriate here.  Consider using
get_seconds().  That might be more accurate on tickless kernels, too.


> +	buf = (u32 *)vmcoreinfo_note;
> +
> +	buf = append_elf_note(buf, VMCOREINFO_NOTE_NAME, 0, vmcoreinfo_data,
> +			      vmcoreinfo_size);
> +
> +	final_note(buf);
> +}
> +
> +}
> +
> +static int __init crash_save_vmcoreinfo_init(void)
> +{
> +	vmcoreinfo_append_str("OSRELEASE=%s\n", UTS_RELEASE);
> +	vmcoreinfo_append_str("PAGESIZE=%d\n", PAGE_SIZE);

I expect the virtualisation guys would be bothered by an open-coded access
to UTS_RELEASE.  I guess it doesn't matter much here, but perhaps it'd be
setting a better example to use init_uts_ns.name.release?



  parent reply	other threads:[~2007-08-22 22:41 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-22 12:08 [PATCH 0/3] vmcoreinfo support for dump filtering Ken'ichi Ohmichi
2007-08-22 12:11 ` [PATCH 1/3] [linux] Add vmcoreinfo Ken'ichi Ohmichi
2007-08-22 12:13 ` [PATCH 2/3] [kexec-tools] Pass vmcoreinfo's address and size Ken'ichi Ohmichi
2007-10-17  2:33   ` Simon Horman
2007-10-17  5:16     ` Ken'ichi Ohmichi
2007-10-17  5:27       ` Andrew Morton
2007-10-17 13:37       ` Simon Horman
2007-10-18  5:37       ` Simon Horman
2007-10-18  9:14         ` tachibana
2007-10-19  3:38           ` Simon Horman
2007-08-22 12:16 ` [PATCH 3/3] [makedumpfile] Extract vmcoreinfo from /proc/vmcore Ken'ichi Ohmichi
2007-08-22 22:40 ` Andrew Morton [this message]
2007-08-23 10:20   ` [PATCH 0/3] vmcoreinfo support for dump filtering Ken'ichi Ohmichi
2007-08-23  5:47 ` Vivek Goyal
2007-09-03  8:15 ` Ken'ichi Ohmichi
2007-10-17 17:19 ` Tony Luck
2007-10-17 20:20   ` Andrew Morton
2007-10-17 21:32     ` Luck, Tony

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070822154036.1bd2f360.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=bwalle@suse.de \
    --cc=da-x@monatomic.org \
    --cc=dzickus@redhat.com \
    --cc=kexec@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nhorman@redhat.com \
    --cc=oomichi@mxs.nes.nec.co.jp \
    --cc=vgoyal@in.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox