I'm working on Linux 4.0.6, and I've activated the coredump and using %e.core pattern. On my machine I see <unset>.core in the core folder. Can someone explain me what does <unset> mean and how can I prevent this?


%e in the core pattern maps to the executable filename, which is essentially equivalent to the comm field in /proc. Under some circumstances, this field in the internal process structure in the kernel can be empty (namely, if argv[0] is an empty string, and for a very short period of time during a fork() call), and if the process crashes while that is the case, you can get a core file with a name like you specified. For what it's worth, I have found that %E (the executable path) is a bit more reliable, as that can't be manipulated by the process itself.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.