The end of /proc/kcore?
[Posted August 20, 2003 by corbet]
Russell King recently posted
a patch which
makes Linus's kernel tree build properly for the ARM architecture. One of
the remaining issues, it seems, was getting
/proc/kcore to work.
/proc/kcore, of course, is a virtual file which appears to be a
core image of the running kernel. It can be used to run debuggers on a
running kernel to dump out data structures and such.
The problem with /proc/kcore is that it has to handle loadable
modules, which are placed in address space that is separate from the rest
of the kernel. Providing user-space access to that space is easier on some
architectures than others. ARM, it seems, is one of the harder
architectures to support. So, rather than put in large amounts of effort
to produce an ugly solution, Russell simply threw in the towel and decreed
that /proc/kcore would not be supported on ARM - at least, in the
absence of a volunteer to take on the work.
Linus responded by suggesting that
/proc/kcore be removed for all architectures.
Does anybody actually _use_ /proc/kcore? It was one of those "cool
feature" things, but I certainly haven't ever used it myself except
for testing, and it's historically often been broken after various
kernel infrastructure updates, and people haven't complained..
There were a couple of followups from people who occasionally use it, but a
notable lack of impassioned defenses for /proc/kcore. The biggest
problem, perhaps, is that OProfile uses that file for some information, but
there suggestions for small changes in how OProfile works to get around
that problem. Unless somebody comes up with a stronger argument soon,
/proc/kcore is likely to be history.
(
Log in to post comments)