}
LUSTRE_RW_ATTR(checksum_t10pi_enforce);
-#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 15, 53, 0)
-static ssize_t read_cache_enable_show(struct kobject *kobj,
- struct attribute *attr,
- char *buf)
-{
- struct obd_device *obd = container_of(kobj, struct obd_device,
- obd_kset.kobj);
- struct ofd_device *ofd = ofd_dev(obd->obd_lu_dev);
-
- if (!ofd->ofd_read_cache_enable)
- return -EOPNOTSUPP;
-
- return lustre_attr_show(&ofd->ofd_osd->dd_kobj,
- ofd->ofd_read_cache_enable, buf);
-}
-
-static ssize_t read_cache_enable_store(struct kobject *kobj,
- struct attribute *attr,
- const char *buffer, size_t count)
-{
- struct obd_device *obd = container_of(kobj, struct obd_device,
- obd_kset.kobj);
- struct ofd_device *ofd = ofd_dev(obd->obd_lu_dev);
- static bool rd_cache_warned;
-
- if (!rd_cache_warned) {
- rd_cache_warned = true;
- pr_info("ofd: 'obdfilter.*.read_cache_enable' is deprecated, use 'osd-*.*.read_cache_enable' instead\n");
- }
-
- if (!ofd->ofd_read_cache_enable)
- return -EOPNOTSUPP;
-
- return lustre_attr_store(&ofd->ofd_osd->dd_kobj,
- ofd->ofd_read_cache_enable, buffer, count);
-}
-LUSTRE_RW_ATTR(read_cache_enable);
-
-static ssize_t readcache_max_filesize_show(struct kobject *kobj,
- struct attribute *attr,
- char *buf)
-{
- struct obd_device *obd = container_of(kobj, struct obd_device,
- obd_kset.kobj);
- struct ofd_device *ofd = ofd_dev(obd->obd_lu_dev);
-
- if (!ofd->ofd_read_cache_max_filesize)
- return -EOPNOTSUPP;
-
- return lustre_attr_show(&ofd->ofd_osd->dd_kobj,
- ofd->ofd_read_cache_max_filesize, buf);
-}
-
-static ssize_t readcache_max_filesize_store(struct kobject *kobj,
- struct attribute *attr,
- const char *buffer, size_t count)
-{
- struct obd_device *obd = container_of(kobj, struct obd_device,
- obd_kset.kobj);
- struct ofd_device *ofd = ofd_dev(obd->obd_lu_dev);
- static bool max_file_warned;
-
- if (!max_file_warned) {
- max_file_warned = true;
- pr_info("ofd: 'obdfilter.*.readcache_max_filesize' is deprecated, use 'osd-*.*.readcache_max_filesize' instead\n");
- }
-
- if (!ofd->ofd_read_cache_max_filesize)
- return -EOPNOTSUPP;
-
- return lustre_attr_store(&ofd->ofd_osd->dd_kobj,
- ofd->ofd_read_cache_max_filesize,
- buffer, count);
-}
-LUSTRE_RW_ATTR(readcache_max_filesize);
-
-static ssize_t writethrough_cache_enable_show(struct kobject *kobj,
- struct attribute *attr,
- char *buf)
-{
- struct obd_device *obd = container_of(kobj, struct obd_device,
- obd_kset.kobj);
- struct ofd_device *ofd = ofd_dev(obd->obd_lu_dev);
-
- if (!ofd->ofd_write_cache_enable)
- return -EOPNOTSUPP;
-
- return lustre_attr_show(&ofd->ofd_osd->dd_kobj,
- ofd->ofd_write_cache_enable, buf);
-}
-
-static ssize_t writethrough_cache_enable_store(struct kobject *kobj,
- struct attribute *attr,
- const char *buffer, size_t count)
-{
- struct obd_device *obd = container_of(kobj, struct obd_device,
- obd_kset.kobj);
- struct ofd_device *ofd = ofd_dev(obd->obd_lu_dev);
- static bool wr_cache_warned;
-
- if (!wr_cache_warned) {
- wr_cache_warned = true;
- pr_info("ofd: 'obdfilter.*.writethrough_cache_enable' is deprecated, use 'osd-*.*.writethrough_cache_enable' instead\n");
- }
-
- if (!ofd->ofd_write_cache_enable)
- return -EOPNOTSUPP;
-
- return lustre_attr_store(&ofd->ofd_osd->dd_kobj,
- ofd->ofd_write_cache_enable,
- buffer, count);
-}
-LUSTRE_RW_ATTR(writethrough_cache_enable);
-#endif
-
LPROC_SEQ_FOPS_RO_TYPE(ofd, recovery_status);
LUSTRE_RW_ATTR(recovery_time_hard);
LUSTRE_RW_ATTR(recovery_time_soft);
&lustre_attr_access_log_size.attr,
&lustre_attr_job_cleanup_interval.attr,
&lustre_attr_checksum_t10pi_enforce.attr,
-#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 15, 53, 0)
- &lustre_attr_read_cache_enable.attr,
- &lustre_attr_readcache_max_filesize.attr,
- &lustre_attr_writethrough_cache_enable.attr,
-#endif
NULL,
};
.ldo_prepare = ofd_prepare,
};
-#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 14, 53, 0)
-/**
- * Expose OSD statistics to OFD layer.
- *
- * The osd interfaces to the backend file system exposes useful data
- * such as brw_stats and read or write cache states. This same data
- * needs to be exposed into the obdfilter (ofd) layer to maintain
- * backwards compatibility. This function creates the symlinks in the
- * proc layer to enable this.
- *
- * \param[in] ofd OFD device
- */
-static void ofd_procfs_add_brw_stats_symlink(struct ofd_device *ofd)
-{
- struct obd_device *obd = ofd_obd(ofd);
- struct obd_device *osd_obd = ofd->ofd_osd_exp->exp_obd;
- const struct kobj_type *osd_type;
- int i;
-
- osd_type = get_ktype(&ofd->ofd_osd->dd_kobj);
- for (i = 0; osd_type->default_attrs[i]; i++) {
- if (strcmp(osd_type->default_attrs[i]->name,
- "read_cache_enable") == 0) {
- ofd->ofd_read_cache_enable =
- osd_type->default_attrs[i];
- }
-
- if (strcmp(osd_type->default_attrs[i]->name,
- "readcache_max_filesize") == 0) {
- ofd->ofd_read_cache_max_filesize =
- osd_type->default_attrs[i];
- }
-
- if (strcmp(osd_type->default_attrs[i]->name,
- "writethrough_cache_enable") == 0) {
- ofd->ofd_write_cache_enable =
- osd_type->default_attrs[i];
- }
- }
-
- if (obd->obd_proc_entry == NULL)
- return;
-
- lprocfs_add_symlink("brw_stats", obd->obd_proc_entry,
- "../../%s/%s/brw_stats",
- osd_obd->obd_type->typ_name, obd->obd_name);
-}
-#endif
-
/**
* Cleanup all procfs entries in OFD.
*
RETURN(rc);
}
-#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 14, 53, 0)
- ofd_procfs_add_brw_stats_symlink(m);
-#endif
-
snprintf(info->fti_u.name, sizeof(info->fti_u.name), "%s-%s",
"filter"/*LUSTRE_OST_NAME*/, obd->obd_uuid.uuid);
m->ofd_namespace = ldlm_namespace_new(obd, info->fti_u.name,
param.fp_exclude_pool = !!neg_opt;
param.fp_check_pool = 1;
break;
-#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 14, 53, 0)
- case 'p': /* want this for --pool, to match getstripe/find */
- fprintf(stderr,
- "warning: -p deprecated, use --print0 or -0\n");
-#endif
case '0':
param.fp_zero_end = 1;
break;
if (lsa.lsa_stripe_off == LLAPI_LAYOUT_DEFAULT)
lsa.lsa_stripe_off = mdts[0];
break;
-#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 15, 53, 0)
- case 'm':
- fprintf(stderr,
- "warning: '-m' is deprecated, use '--mode' or '-o' instead\n");
-#endif
case 'o':
mode_opt = optarg;
break;
break;
#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(3, 0, 53, 0)
case 'd':
-#if LUSTRE_VERSION_CODE > OBD_OCD_VERSION(2, 15, 53, 0)
- fprintf(stderr, "'-d' deprecatd, use '-D' or '--default'\n");
-#endif
- /* falltrrough */
+ fprintf(stderr,
+ "%s setquota: '-d' deprecated, use '-D' or '--default'\n",
+ progname);
+ fallthrough;
#endif
case 'D':
use_default = true;