Bug#676001: Processed: reassign 676001 to busybox
On 08.06.2012 14:52, maximilian attems wrote:
> dude care to have a bit of patience before reassigning back,
> that be really nice.
I gave a few days, maybe it was too few, I dunno.
> On Tue, Jun 05, 2012 at 08:45:59AM +0400, Michael Tokarev wrote:
>> I disagree it is a busybox problem, and don't think it is a
>> switch_root business (be it from busybox or from util-linux).
> switch_root in util-linux does it.
Yes, but it is still none of its business.
>> There are a few special directories which needs to be moved
>> or umounted. This includes /proc, /dev, /sys and not mentioned
>> here /run. These directories might be mounted in the new root
>> already, or there may be some option passed to initramfs to
>> not mount these, or there may be other local policy or whatever
>> decisions. All that can't be handled and can't be known to
>> switch_root -- this is exactly why we have initramfs/init as
>> a script, to be able to handle various local usecases/policies
>> and made it extendable.
> If you name a command switch-root and not run-init, you'd have
> to take care to emmulate what the original command does.
> In this case it is util-linux is clearly predating busybox and thus
> busybox is buggy not fully implementing the command.
Almost no of busybox commands implements fully the corresponding
"big brother" behavour.
But this is not the point.
The point is, and I described it above, it is none of switch_root
business to move other filesystems, because it does not have enough
information. We've a long list of actions an initramfs does, and
this list includes mounting many filesystems. The script which
does that has much more information about what it should do and
how, and has much more chances to report errors (eg, when the new
root does not have /proc or /sys directory or whatever).
Besides, and I also mentioned that in my initial explanation above,
/proc and /sys are not different from any other filesystem which
should be moved to the new root - like /run or /dev.
Now it'd be nice to know why util-linux handles these, but again,
it is not the point at all. Just move these explicitly, exactly
the way it is done with /run or anything else which might be