Whamcloud - gitweb
b=11063 set mtime to past under PW EOF extent lock (v6)
[fs/lustre-release.git] / lustre / osc / osc_lock.c
index 5718937..0d4e383 100644 (file)
@@ -988,14 +988,14 @@ static void osc_lock_to_lockless(const struct lu_env *env,
                         io->ci_lockreq == CILR_NEVER);
 
                 ocd = &class_exp2cliimp(osc_export(oob))->imp_connect_data;
                         io->ci_lockreq == CILR_NEVER);
 
                 ocd = &class_exp2cliimp(osc_export(oob))->imp_connect_data;
-                ols->ols_locklessable = (io->ci_type != CIT_TRUNC) &&
+                ols->ols_locklessable = (io->ci_type != CIT_SETATTR) &&
                                 (io->ci_lockreq == CILR_MAYBE) &&
                                 (ocd->ocd_connect_flags & OBD_CONNECT_SRVLOCK);
                 if (io->ci_lockreq == CILR_NEVER ||
                         /* lockless IO */
                     (ols->ols_locklessable && osc_object_is_contended(oob)) ||
                         /* lockless truncate */
                                 (io->ci_lockreq == CILR_MAYBE) &&
                                 (ocd->ocd_connect_flags & OBD_CONNECT_SRVLOCK);
                 if (io->ci_lockreq == CILR_NEVER ||
                         /* lockless IO */
                     (ols->ols_locklessable && osc_object_is_contended(oob)) ||
                         /* lockless truncate */
-                    (io->ci_type == CIT_TRUNC &&
+                    (cl_io_is_trunc(io) &&
                      (ocd->ocd_connect_flags & OBD_CONNECT_TRUNCLOCK) &&
                       osd->od_lockless_truncate)) {
                         ols->ols_locklessable = 1;
                      (ocd->ocd_connect_flags & OBD_CONNECT_TRUNCLOCK) &&
                       osd->od_lockless_truncate)) {
                         ols->ols_locklessable = 1;