From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4938153934804404987==" MIME-Version: 1.0 From: Jan Kratochvil To: elfutils-devel@lists.fedorahosted.org Subject: Re: [PATCH] Add --core-pattern option to eu-stack Date: Wed, 26 Nov 2014 15:44:34 +0100 Message-ID: <20141126144434.GB16611@host2.jankratochvil.net> In-Reply-To: 1414706141.18323.39.camel@bordewijk.wildebeest.org --===============4938153934804404987== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On Thu, 30 Oct 2014 22:55:41 +0100, Mark Wielaard wrote: > I did have to lookup how to use this though. And I couldn't make it work > without adding an -o option to eu-stack to explicitly redirect output > since it seems you cannot use normal shell redirections > in /proc/sys/kernel/core_pattern. So I had to use something like > --output=3D/proc/%p/cwd/%i.stack. Where does the stdout of the > core_pattern end up otherwise? Nowhere as the only open fd is 0 - the piped core file: lr-x------ 1 root root 64 Nov 26 15:23 0 -> pipe:[5401953] I did not expect (and did not use) eu-stack directly in /proc/sys/kernel/core_pattern . I put there just a shell script which ended with 'exec eu-stack ...'. This is why I have put into --help the comment: core file fd 0 must be owned only by this process (e.g. use shell exec) > It would probably be good to have a full example usage in the --help > message (and tell people to look at man 5 core). One should IMO put into that shell script dumping of more associated information, such as /proc/PID/fd/ and other info found in ABRT, it needs to find some proper appendable output file and/or unique directory etc. I do = not find it all suitable for eu-stack --help. That would be possibly appropria= te for a man page but elfutils has no man pages. > > The code of core_pattern function has been suggested by Oleg Nesterov. > = > I was wondering if we could make this a little more generically usable > and call it --wait-exit or something like that. So people could also use > it outside the core_pattern if they just want to get a backtrace for a > known thread when it exits. I was trying to figure out some more generic functionality than --core-patt= ern but given that for core_pattern one needs to: PTRACE_SEIZE close(0) waitpid() I do not find any part of this sequence separable, do you? Thanks, Jan --===============4938153934804404987== Content-Type: message/rfc822 MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.mht" WzxlbWFpbC5tZXNzYWdlLk1lc3NhZ2UgaW5zdGFuY2UgYXQgMHgxNTM5MjAwPl0= --===============4938153934804404987==--