]> git.baikalelectronics.ru Git - kernel.git/commit
Revert "init: make rootdelay=N consistent with rootwait behaviour"
authorPaul Gortmaker <paul.gortmaker@windriver.com>
Wed, 17 Sep 2014 14:57:45 +0000 (10:57 -0400)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 17 Sep 2014 15:02:07 +0000 (08:02 -0700)
commitb120dbeeb17c9f3b3e78da52bfeaac3c5dc64310
tree7a8ef0926c99ebca9c4a67ee9cc1da3433d98c48
parent98dcc00398744a177a9b9649fc0aa1bb45587521
Revert "init: make rootdelay=N consistent with rootwait behaviour"

This reverts commit 06f1f0a8fd9b71fa9a76522baf5d2b461a0b0d58.

In that, we did:

  Here we move the rootdelay code to be right beside the rootwait code, so
  that their behaviour is consistent.

...which is fine, but in hindsight, perhaps moving the rootwait to be
beside the rootdelay would have been better.  We also indicated:

  It should be noted that in doing so, the actions based on the
  saved_root_name[0] and initrd_load() were previously put on hold by
  rootdelay=N and now currently will not be delayed.  However, I think
  consistent behaviour is more important than matching historical behaviour
  of delaying the above two operations.

But Pavel reported an instance where an ARM target with root on MMC
was failing to mount root, and Russell diagnosed it to the fact that
the call to set ROOT_DEV within the saved_root_name[0] processing
block mentioned above was no longer being delayed.

Rather than moving both wait clauses to the original position of
rootdelay and risking unearthing other possible corner case breakage
at this point in time, we simply revert now and we can revisit
trying the alternate/earlier location in another development cycle.

Cc: Pavel Machek <pavel@denx.de>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
init/do_mounts.c