b=13148
i=green
i=adilger
pre-created objects when available, instead of blocking on an
empty osc while others are not empty. If we must block, we block
for the shortest possible period of time.
+
+Severity : normal
+Bugzilla : 13148
+Frequency : only in recovery
+Description: Mark OST as as early accessible if his start SYNC.
+Details : osc_precreate return flag early accessible if oscc marked as
+ OSCC_FLAG_SYNC_IN_PROGRESS.
--------------------------------------------------------------------------------
RETURN(2);
if (oscc->oscc_last_id < oscc->oscc_next_id) {
+ spin_lock(&oscc->oscc_lock);
+ if (oscc->oscc_flags & OSCC_FLAG_SYNC_IN_PROGRESS) {
+ spin_unlock(&oscc->oscc_lock);
+ RETURN(1);
+ }
if (oscc->oscc_flags & OSCC_FLAG_NOSPC ||
- oscc_recovering(oscc))
+ oscc->oscc_flags & OSCC_FLAG_RECOVERING) {
+ spin_unlock(&oscc->oscc_lock);
RETURN(2);
+ }
+ spin_unlock(&oscc->oscc_lock);
if (oscc->oscc_flags & OSCC_FLAG_CREATING)
RETURN(1);