-static int
-mdd_changelog_write_header(const struct lu_env *env, struct mdd_device *mdd,
- int markerflags);
-
-/* Start / stop recording */
-static int
-mdd_changelog_on(const struct lu_env *env, struct mdd_device *mdd, int on)
-{
- int rc = 0;
-
- if ((on == 1) && ((mdd->mdd_cl.mc_flags & CLM_ON) == 0)) {
- LCONSOLE_INFO("%s: changelog on\n", mdd2obd_dev(mdd)->obd_name);
- if (mdd->mdd_cl.mc_flags & CLM_ERR) {
- CERROR("Changelogs cannot be enabled due to error "
- "condition (see %s log).\n",
- mdd2obd_dev(mdd)->obd_name);
- rc = -ESRCH;
- } else {
- spin_lock(&mdd->mdd_cl.mc_lock);
- mdd->mdd_cl.mc_flags |= CLM_ON;
- spin_unlock(&mdd->mdd_cl.mc_lock);
- rc = mdd_changelog_write_header(env, mdd, CLM_START);
- }
- } else if ((on == 0) && ((mdd->mdd_cl.mc_flags & CLM_ON) == CLM_ON)) {
- LCONSOLE_INFO("%s: changelog off\n",mdd2obd_dev(mdd)->obd_name);
- rc = mdd_changelog_write_header(env, mdd, CLM_FINI);
- spin_lock(&mdd->mdd_cl.mc_lock);
- mdd->mdd_cl.mc_flags &= ~CLM_ON;
- spin_unlock(&mdd->mdd_cl.mc_lock);
- }
- return rc;
-}
-