Re: Feature request: exec self for NOMMU.

From: David Lang
Date: Tue Dec 26 2006 - 19:17:15 EST


On Tue, 26 Dec 2006, Rob Landley wrote:

I'm trying to make some nommu-friendly busybox-like tools, which means using
vfork() instead of fork(). This means that after I fork I have to exec in
the child to unblock the parent, and if I want to exec my current executable
I have to find out where it lives so I can feed the path to exec(). This is
nontrivial.

Worse, it's not always possible. If chroot() has happened since the program
started, there may not _be_ a path to my current executable available from
this process's current or root directories.

does this even make sense (as a general purpose function)? if the executable isn't available in your path it's likly that any config files it needs are not available either.

What would be really nice is if I could feed a NULL path to exec on NOMMU
systems, and have that mean "re-exec the current executable". I can't think
of a way to do this without kernel support. Any opinions on whether this is
worthwhile?

for something like busybox/toolbox where you have different functions based on the name used to execute the program, which name would you use?

David Lang

A nommu-friendly daemonize() is another use for this, by the way...

Rob

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/