summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeoff Levand <geoff@infradead.org>2012-03-26 20:16:37 -0700
committerGeoff Levand <geoff@infradead.org>2012-03-26 20:16:37 -0700
commitf1dad9c1eb7cdc583a56734e9d46a1ce5bb755d5 (patch)
tree7537850037a417646d28897d308f2b2cff941ac5
parent784163c0779638e8d47bf68a65f4382f8e26ce3f (diff)
downloadtalos-petitboot-f1dad9c1eb7cdc583a56734e9d46a1ce5bb755d5.tar.gz
talos-petitboot-f1dad9c1eb7cdc583a56734e9d46a1ce5bb755d5.zip
Fix device mount retry
Signed-off-by: Geoff Levand <geoff@infradead.org>
-rw-r--r--discover/device-handler.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/discover/device-handler.c b/discover/device-handler.c
index 2888914..0783181 100644
--- a/discover/device-handler.c
+++ b/discover/device-handler.c
@@ -201,11 +201,18 @@ static int mount_device(struct discover_context *ctx)
argv[4] = "ro";
argv[5] = NULL;
- if (pb_run_cmd(argv, 1))
- argv[3] = NULL; /* try without ro */
+ if (pb_run_cmd(argv, 1)) {
- if (pb_run_cmd(argv, 1))
- goto out_rmdir;
+ /* Retry mount without ro option. */
+
+ argv[0] = MOUNT_BIN;
+ argv[1] = ctx->device_path;
+ argv[2] = ctx->mount_path;
+ argv[3] = NULL;
+
+ if (pb_run_cmd(argv, 1))
+ goto out_rmdir;
+ }
setup_device_links(ctx);
return 0;
OpenPOWER on IntegriCloud