Whamcloud - gitweb
Get things to compiling at least.
authoradilger <adilger>
Tue, 10 Dec 2002 09:20:47 +0000 (09:20 +0000)
committeradilger <adilger>
Tue, 10 Dec 2002 09:20:47 +0000 (09:20 +0000)
lustre/include/linux/lustre_fsfilt.h
lustre/obdclass/fsfilt.c
lustre/obdclass/fsfilt_ext3.c
lustre/obdclass/fsfilt_extN.c

index 19057bd..5f4632e 100644 (file)
@@ -45,11 +45,9 @@ struct fsfilt_operations {
         int     (* fs_get_md)(struct inode *inode, void *md, int size);
         ssize_t (* fs_readpage)(struct file *file, char *buf, size_t count,
                                 loff_t *offset);
-        void    (* fs_delete_inode)(struct inode *inode);
-        void    (* cl_delete_inode)(struct inode *inode);
         int     (* fs_journal_data)(struct file *file);
         int     (* fs_set_last_rcvd)(struct obd_device *obd, __u64 last_rcvd,
-                                     void *handle, fsfilt_cb_t *cb_func);
+                                     void *handle, fsfilt_cb_t cb_func);
         int     (* fs_statfs)(struct super_block *sb, struct statfs *sfs);
 };
 
@@ -116,12 +114,26 @@ static inline ssize_t fsfilt_readpage(struct obd_device *obd,
         return obd->obd_fsops->fs_readpage(file, buf, count, offset);
 }
 
+static inline int fsfilt_journal_data(struct obd_device *obd, struct file *file)
+{
+        return obd->obd_fsops->fs_journal_data(file);
+}
+
 static inline int fsfilt_set_last_rcvd(struct obd_device *obd, __u64 last_rcvd,
-                                       void *handle, fsfilt_cb_t *cb_func)
+                                       void *handle, fsfilt_cb_t cb_func)
 {
         return obd->obd_fsops->fs_set_last_rcvd(obd, last_rcvd,handle,cb_func);
 }
 
+static inline int fsfilt_statfs(struct obd_device *obd, struct super_block *fs,
+                                struct statfs *sfs)
+{
+        return obd->obd_fsops->fs_statfs(fs, sfs);
+}
+
+extern struct fsfilt_operations *fsfilt_get_ops(char *type);
+extern void fsfilt_put_ops(struct fsfilt_operations *fs_ops);
+
 #endif /* __KERNEL__ */
 
 #endif
index defd187..0d15a09 100644 (file)
@@ -106,3 +106,5 @@ void fsfilt_put_ops(struct fsfilt_operations *fs_ops)
 
 EXPORT_SYMBOL(fsfilt_register_fs_type);
 EXPORT_SYMBOL(fsfilt_unregister_fs_type);
+EXPORT_SYMBOL(fsfilt_get_ops);
+EXPORT_SYMBOL(fsfilt_put_ops);
index e762e4f..db0ebf0 100644 (file)
@@ -201,28 +201,6 @@ static ssize_t fsfilt_ext3_readpage(struct file *file, char *buf, size_t count,
         return rc;
 }
 
-static void fsfilt_ext3_delete_inode(struct inode *inode)
-{
-        if (S_ISREG(inode->i_mode)) {
-                void *handle = fsfilt_ext3_start(inode, FSFILT_OP_UNLINK);
-
-                if (IS_ERR(handle)) {
-                        CERROR("unable to start transaction");
-                        EXIT;
-                        return;
-                }
-                if (fsfilt_ext3_set_md(inode, handle, NULL, 0))
-                        CERROR("error clearing objid on %lu\n", inode->i_ino);
-
-                if (fsfilt_ext3_fs_ops.cl_delete_inode)
-                        fsfilt_ext3_fs_ops.cl_delete_inode(inode);
-
-                if (fsfilt_ext3_commit(inode, handle))
-                        CERROR("error closing handle on %lu\n", inode->i_ino);
-        } else
-                fsfilt_ext3_fs_ops.cl_delete_inode(inode);
-}
-
 static void fsfilt_ext3_callback_status(struct journal_callback *jcb, int error)
 {
         struct fsfilt_cb_data *fcb = (struct fsfilt_cb_data *)jcb;
index 2bbec46..32ec07c 100644 (file)
@@ -201,28 +201,6 @@ static ssize_t fsfilt_extN_readpage(struct file *file, char *buf, size_t count,
         return rc;
 }
 
-static void fsfilt_extN_delete_inode(struct inode *inode)
-{
-        if (S_ISREG(inode->i_mode)) {
-                void *handle = fsfilt_extN_start(inode, FSFILT_OP_UNLINK);
-
-                if (IS_ERR(handle)) {
-                        CERROR("unable to start transaction");
-                        EXIT;
-                        return;
-                }
-                if (fsfilt_extN_set_md(inode, handle, NULL, 0))
-                        CERROR("error clearing objid on %lu\n", inode->i_ino);
-
-                if (fsfilt_extN_fs_ops.cl_delete_inode)
-                        fsfilt_extN_fs_ops.cl_delete_inode(inode);
-
-                if (fsfilt_extN_commit(inode, handle))
-                        CERROR("error closing handle on %lu\n", inode->i_ino);
-        } else
-                fsfilt_extN_fs_ops.cl_delete_inode(inode);
-}
-
 static void fsfilt_extN_cb_func(struct journal_callback *jcb, int error)
 {
         struct fsfilt_cb_data *fcb = (struct fsfilt_cb_data *)jcb;
@@ -309,8 +287,6 @@ static struct fsfilt_fs_operations fsfilt_extN_fs_ops = {
         fs_set_md:              fsfilt_extN_set_md,
         fs_get_md:              fsfilt_extN_get_md,
         fs_readpage:            fsfilt_extN_readpage,
-        fs_delete_inode:        fsfilt_extN_delete_inode,
-        cl_delete_inode:        clear_inode,
         fs_journal_data:        fsfilt_extN_journal_data,
         fs_set_last_rcvd:       fsfilt_extN_set_last_rcvd,
         fs_statfs:              fsfilt_extN_statfs,