]> git.ozlabs.org Git - petitboot/blobdiff - discover/device-handler.c
Fix device mount retry
[petitboot] / discover / device-handler.c
index c72390b438d7222540b467619d6f2865117eb503..0783181147edab9f0f8c6b7de9fa2ea35c516cb8 100644 (file)
@@ -201,8 +201,18 @@ static int mount_device(struct discover_context *ctx)
        argv[4] = "ro";
        argv[5] = NULL;
 
-       if (pb_run_cmd(argv))
-               goto out_rmdir;
+       if (pb_run_cmd(argv, 1)) {
+
+               /* 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;