diff options
author | Geoff Levand <geoff@infradead.org> | 2012-03-26 20:16:37 -0700 |
---|---|---|
committer | Geoff Levand <geoff@infradead.org> | 2012-03-26 20:16:37 -0700 |
commit | f1dad9c1eb7cdc583a56734e9d46a1ce5bb755d5 (patch) | |
tree | 7537850037a417646d28897d308f2b2cff941ac5 /discover/device-handler.c | |
parent | 784163c0779638e8d47bf68a65f4382f8e26ce3f (diff) | |
download | talos-petitboot-f1dad9c1eb7cdc583a56734e9d46a1ce5bb755d5.tar.gz talos-petitboot-f1dad9c1eb7cdc583a56734e9d46a1ce5bb755d5.zip |
Fix device mount retry
Signed-off-by: Geoff Levand <geoff@infradead.org>
Diffstat (limited to 'discover/device-handler.c')
-rw-r--r-- | discover/device-handler.c | 15 |
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; |