On Mon, Mar 25, 2013 at 10:48:07AM +0100, Denys Vlasenko wrote: > On 03/19/2013 09:19 PM, Oleg Nesterov wrote: > >> The above is regarding the situation which I'm running my corepipe_app , > >> i.e. my system doesn't have a disk to save a core file for parsing. > > > > Can't you process the data inplace? You do not need to save it to disk. > > Daniel said: > > >> I'm trying to get the "dumpers" registers and stack out when it fails. > > Registers would be easy'ish to get from coredump: > they are contained in note sections which are at the beginning > of the coredump. You can implement necessary parsing without > too much pain. > > Getting at stack would be harder.
There exists /proc/<pid>/mem and /proc/<pid>/maps on these tasks. If those don't work then that's a straight up defect.. > But by asking kernel to allow you to poke around dead task's > address space with ptrace() calls you just shift difficulty away from you > (today you need to implement in-memory ELF parsing) to kernel people > (they will need to implement *and support* ptracing of coredumping > tasks). > > This is somewhat unfair, considering that coredumping code in kernel > is already a source of many complications, and that kernel-side coding > is harder than userspace. > > I think you are lucky that ptrace attach even *works* on coredumping task. > No documentation ever guaranteed such a thing. There not much different from userspace between a task running, and one dumping.. I think it should be the inverse, ptrace either needs to work or the special case needs to be documented that it doesn't work. However, I do agree that you can parse the core file.. Daniel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/