[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070412193838.ea98238b.randy.dunlap@oracle.com>
Date: Thu, 12 Apr 2007 19:38:38 -0700
From: Randy Dunlap <randy.dunlap@...cle.com>
To: "Christopher S. Aker" <caker@...shore.net>
Cc: Andi Kleen <andi@...stfloor.org>,
"Bill Rugolsky Jr." <brugolsky@...emetry-investments.com>,
Alan Cox <alan@...rguk.ukuu.org.uk>,
linux-kernel@...r.kernel.org
Subject: Re: [Feature Request?] Inline compression of process core dumps
On Thu, 12 Apr 2007 22:22:18 -0400 Christopher S. Aker wrote:
> Alan Cox wrote:
> > Indeed. So useful that in current kernels you can set the core dump
> > path to be
> >
> > "|application"
>
> Cool stuff! However, it's not working (2.6.20.6):
>
> Core dump to |/home/caker/bin/dumper.pl.4442 pipe failed
>
> even though...
>
> # cat /proc/sys/kernel/core_uses_pid
> 0
> # cat /proc/sys/kernel/core_pattern
> |/home/caker/bin/dumper.pl
>
> Looking at the code, it seems to me that format_corename() is appending
> .pid, regardless if !core_uses_pid and corename[0]=='|', in which case
> it creates an invalid path for call_usermodehelper_pipe().
>
> Bug in the code, or bug in my methods?
What are you trying to dump? is it a multi-thread group app,
not a "simple" app? I ask because of this (I'm looking at 2.6.21-rc6)
<mm_users> reference (not that I know what that is):
if (!pid_in_pattern
&& (core_uses_pid || atomic_read(¤t->mm->mm_users) != 1)) {
rc = snprintf(out_ptr, out_end - out_ptr,
".%d", current->tgid);
if (rc > out_end - out_ptr)
goto out;
out_ptr += rc;
}
---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists