+
+/*
+ * Quota configuration handlers in charge of processing all per-filesystem quota
+ * parameters set via conf_param.
+ *
+ * \param lcfg - quota configuration log to be processed
+ */
+int qsd_process_config(struct lustre_cfg *lcfg)
+{
+ char *fsname = lustre_cfg_string(lcfg, 0);
+ char *cfgstr = lustre_cfg_string(lcfg, 1);
+ char *keystr, *valstr;
+ int pool;
+
+ ENTRY;
+ CDEBUG(D_QUOTA, "processing quota parameter: fs:%s cfgstr:%s\n", fsname,
+ cfgstr);
+
+ if (class_match_param(cfgstr, PARAM_QUOTA, &keystr) != 0)
+ RETURN(-EINVAL);
+
+ if (!class_match_param(keystr, QUOTA_METAPOOL_NAME, &valstr))
+ pool = LQUOTA_RES_MD;
+ else if (!class_match_param(keystr, QUOTA_DATAPOOL_NAME, &valstr))
+ pool = LQUOTA_RES_DT;
+ else
+ RETURN(-EINVAL);
+
+ return qsd_config(valstr, fsname, pool);
+}