* Object with @fid is getting deleted, we may want to do something
* about this.
*/
- int (*o_fid_delete)(struct obd_export *exp, const struct lu_fid *fid);
-
int (*o_statfs)(const struct lu_env *, struct obd_export *exp,
struct obd_statfs *osfs, __u64 max_age, __u32 flags);
int (*o_statfs_async)(struct obd_export *exp, struct obd_info *oinfo,
RETURN(rc);
}
-static inline int obd_fid_delete(struct obd_export *exp,
- const struct lu_fid *fid)
-{
- int rc;
- ENTRY;
-
- EXP_CHECK_DT_OP(exp, fid_delete);
- EXP_COUNTER_INCREMENT(exp, fid_delete);
-
- rc = OBP(exp->exp_obd, fid_delete)(exp, fid);
- RETURN(rc);
-}
-
static inline int obd_ping(const struct lu_env *env, struct obd_export *exp)
{
int rc;
void ll_delete_inode(struct inode *inode)
{
struct cl_inode_info *lli = cl_i2info(inode);
- struct ll_sb_info *sbi = ll_i2sbi(inode);
- int rc;
ENTRY;
- rc = obd_fid_delete(sbi->ll_md_exp, ll_inode2fid(inode));
- if (rc)
- CERROR("fid_delete() failed, rc %d\n", rc);
-
if (S_ISREG(inode->i_mode) && lli->lli_clob != NULL)
/* discard all dirty pages before truncating them, required by
* osc_extent implementation at LU-1030. */
RETURN(rc);
}
-static int lmv_fid_delete(struct obd_export *exp, const struct lu_fid *fid)
-{
- ENTRY;
- LASSERT(exp != NULL && fid != NULL);
- if (lmv_object_delete(exp, fid)) {
- CDEBUG(D_INODE, "Object "DFID" is destroyed.\n",
- PFID(fid));
- }
- RETURN(0);
-}
-
static int lmv_setup(struct obd_device *obd, struct lustre_cfg *lcfg)
{
struct lmv_obd *lmv = &obd->u.lmv;
.o_notify = lmv_notify,
.o_get_uuid = lmv_get_uuid,
.o_iocontrol = lmv_iocontrol,
- .o_fid_delete = lmv_fid_delete,
.o_quotacheck = lmv_quotacheck,
.o_quotactl = lmv_quotactl
};
RETURN(seq_client_alloc_fid(NULL, seq, fid));
}
-/* XXX This method is used only to clear current fid seq
- * once fld/mds insert failed */
-static int mdc_fid_delete(struct obd_export *exp, const struct lu_fid *fid)
-{
- struct client_obd *cli = &exp->exp_obd->u.cli;
-
- seq_client_flush(cli->cl_seq);
- return 0;
-}
-
struct obd_uuid *mdc_get_uuid(struct obd_export *exp) {
struct client_obd *cli = &exp->exp_obd->u.cli;
return &cli->cl_target_uuid;
.o_fid_init = mdc_fid_init,
.o_fid_fini = mdc_fid_fini,
.o_fid_alloc = mdc_fid_alloc,
- .o_fid_delete = mdc_fid_delete,
.o_import_event = mdc_import_event,
.o_llog_init = mdc_llog_init,
.o_llog_finish = mdc_llog_finish,
LPROCFS_OBD_OP_INIT(num_private_stats, stats, fid_init);
LPROCFS_OBD_OP_INIT(num_private_stats, stats, fid_fini);
LPROCFS_OBD_OP_INIT(num_private_stats, stats, fid_alloc);
- LPROCFS_OBD_OP_INIT(num_private_stats, stats, fid_delete);
LPROCFS_OBD_OP_INIT(num_private_stats, stats, statfs);
LPROCFS_OBD_OP_INIT(num_private_stats, stats, statfs_async);
LPROCFS_OBD_OP_INIT(num_private_stats, stats, packmd);