diff --git a/lustre/ChangeLog b/lustre/ChangeLog index 3375cb0d22c8de9f91d357bc9f108ad90176e1be..d71a0a99d75407294c8d9d24922dc8be21fadde7 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -101,6 +101,13 @@ Details : Concurrent access to the same directory from multiple clients with ll_readdir(). i_version must be increased every time the lock is cancelled to ensure a revalidate is done. +Severity : normal +Frequency : always +Bugzilla : 13976 +Description: touch file failed when fs is not full +Details : OST in recovery should not be discarded by MDS in alloc_qos(), + otherwise we can get ENOSP while fs is not full. + -------------------------------------------------------------------------------- 2007-10-26 Cluster File Systems, Inc. <info@clusterfs.com> diff --git a/lustre/lov/lov_qos.c b/lustre/lov/lov_qos.c index 2755f731a901dcb692b7a9bc2dcd626c51a262e7..ad2a2f951aca9019216666e6fd06e7b899ce14f1 100644 --- a/lustre/lov/lov_qos.c +++ b/lustre/lov/lov_qos.c @@ -691,7 +691,7 @@ static int alloc_qos(struct obd_export *exp, int *idx_arr, int *stripe_cnt, if (OBD_FAIL_CHECK(OBD_FAIL_MDS_OSC_PRECREATE) && i == 0) continue; - if (obd_precreate(lov->lov_tgts[i]->ltd_exp, 1) >= 2) + if (obd_precreate(lov->lov_tgts[i]->ltd_exp, 1) > 2) continue; lov->lov_tgts[i]->ltd_qos.ltq_usable = 1;