Whamcloud - gitweb
LU-7623 Update obd iocontrol methods with __user attribute
[fs/lustre-release.git] / lustre / ofd / ofd_obd.c
index 2d73ae5..1be25b5 100644 (file)
@@ -535,17 +535,20 @@ static int ofd_destroy_export(struct obd_export *exp)
 int ofd_postrecov(const struct lu_env *env, struct ofd_device *ofd)
 {
        struct lu_device *ldev = &ofd->ofd_dt_dev.dd_lu_dev;
-       struct lfsck_start_param lsp;
        int rc;
 
        CDEBUG(D_HA, "%s: recovery is over\n", ofd_name(ofd));
 
-       lsp.lsp_start = NULL;
-       lsp.lsp_index_valid = 0;
-       rc = lfsck_start(env, ofd->ofd_osd, &lsp);
-       if (rc != 0 && rc != -EALREADY)
-               CWARN("%s: auto trigger paused LFSCK failed: rc = %d\n",
-                     ofd_name(ofd), rc);
+       if (!ofd->ofd_skip_lfsck) {
+               struct lfsck_start_param lsp;
+
+               lsp.lsp_start = NULL;
+               lsp.lsp_index_valid = 0;
+               rc = lfsck_start(env, ofd->ofd_osd, &lsp);
+               if (rc != 0 && rc != -EALREADY)
+                       CWARN("%s: auto trigger paused LFSCK failed: rc = %d\n",
+                             ofd_name(ofd), rc);
+       }
 
        return ldev->ld_ops->ldo_recovery_complete(env, ldev);
 }
@@ -1281,7 +1284,7 @@ out:
  * \retval             negative value on error
  */
 static int ofd_iocontrol(unsigned int cmd, struct obd_export *exp, int len,
-                        void *karg, void *uarg)
+                        void *karg, void __user *uarg)
 {
        struct lu_env            env;
        struct ofd_device       *ofd = ofd_exp(exp);
@@ -1298,7 +1301,7 @@ static int ofd_iocontrol(unsigned int cmd, struct obd_export *exp, int len,
        switch (cmd) {
        case OBD_IOC_ABORT_RECOVERY:
                CERROR("%s: aborting recovery\n", obd->obd_name);
-               obd->obd_force_abort_recovery = 1;
+               obd->obd_abort_recovery = 1;
                target_stop_recovery_thread(obd);
                break;
        case OBD_IOC_SYNC: