Whamcloud - gitweb
LU-5971 llite: rename ccc_lock to vvp_lock
[fs/lustre-release.git] / lustre / llite / vvp_internal.h
index 5b8c747..d6cc854 100644 (file)
@@ -138,6 +138,7 @@ int cl_is_normalio(const struct lu_env *env, const struct cl_io *io);
 extern struct lu_context_key ccc_key;
 extern struct lu_context_key ccc_session_key;
 
+extern struct kmem_cache *vvp_lock_kmem;
 extern struct kmem_cache *vvp_object_kmem;
 
 struct ccc_thread_info {
@@ -215,7 +216,7 @@ struct vvp_object {
         * A list of dirty pages pending IO in the cache. Used by
         * SOM. Protected by ll_inode_info::lli_lock.
         *
-        * \see ccc_page::cpg_pending_linkage
+        * \see vvp_page::vpg_pending_linkage
         */
        struct list_head        vob_pending_list;
 
@@ -246,44 +247,42 @@ struct vvp_object {
 };
 
 /**
- * ccc-private page state.
+ * VVP-private page state.
  */
-struct ccc_page {
-       struct cl_page_slice cpg_cl;
-       unsigned        cpg_defer_uptodate:1,
-                       cpg_ra_used:1,
-                       cpg_write_queued:1;
+struct vvp_page {
+       struct cl_page_slice vpg_cl;
+       unsigned        vpg_defer_uptodate:1,
+                       vpg_ra_used:1,
+                       vpg_write_queued:1;
        /**
         * Non-empty iff this page is already counted in
         * vvp_object::vob_pending_list. This list is only used as a flag,
         * that is, never iterated through, only checked for list_empty(), but
         * having a list is useful for debugging.
         */
-       struct list_head cpg_pending_linkage;
+       struct list_head vpg_pending_linkage;
        /** VM page */
-       struct page     *cpg_page;
+       struct page     *vpg_page;
 };
 
-static inline struct ccc_page *cl2ccc_page(const struct cl_page_slice *slice)
+static inline struct vvp_page *cl2vvp_page(const struct cl_page_slice *slice)
 {
-       return container_of(slice, struct ccc_page, cpg_cl);
+       return container_of(slice, struct vvp_page, vpg_cl);
 }
 
-static inline pgoff_t ccc_index(struct ccc_page *ccc)
+static inline pgoff_t vvp_index(struct vvp_page *vpg)
 {
-       return ccc->cpg_cl.cpl_index;
+       return vpg->vpg_cl.cpl_index;
 }
 
-struct cl_page *ccc_vmpage_page_transient(struct page *vmpage);
-
 struct vvp_device {
        struct cl_device    vdv_cl;
        struct super_block *vdv_sb;
        struct cl_device   *vdv_next;
 };
 
-struct ccc_lock {
-       struct cl_lock_slice clk_cl;
+struct vvp_lock {
+       struct cl_lock_slice vlk_cl;
 };
 
 struct ccc_req {
@@ -303,35 +302,6 @@ int ccc_req_init(const struct lu_env *env, struct cl_device *dev,
 void ccc_umount(const struct lu_env *env, struct cl_device *dev);
 int ccc_global_init(struct lu_device_type *device_type);
 void ccc_global_fini(struct lu_device_type *device_type);
-int ccc_lock_init(const struct lu_env *env, struct cl_object *obj,
-                 struct cl_lock *lock, const struct cl_io *io,
-                 const struct cl_lock_operations *lkops);
-int ccc_fail(const struct lu_env *env, const struct cl_page_slice *slice);
-void ccc_transient_page_verify(const struct cl_page *page);
-int  ccc_transient_page_own(const struct lu_env *env,
-                           const struct cl_page_slice *slice,
-                           struct cl_io *io, int nonblock);
-void ccc_transient_page_assume(const struct lu_env *env,
-                              const struct cl_page_slice *slice,
-                              struct cl_io *io);
-void ccc_transient_page_unassume(const struct lu_env *env,
-                                const struct cl_page_slice *slice,
-                                struct cl_io *io);
-void ccc_transient_page_disown(const struct lu_env *env,
-                              const struct cl_page_slice *slice,
-                              struct cl_io *io);
-void ccc_transient_page_discard(const struct lu_env *env,
-                               const struct cl_page_slice *slice,
-                               struct cl_io *io);
-int ccc_transient_page_prep(const struct lu_env *env,
-                           const struct cl_page_slice *slice,
-                           struct cl_io *io);
-void ccc_lock_delete(const struct lu_env *env,
-                    const struct cl_lock_slice *slice);
-void ccc_lock_fini(const struct lu_env *env, struct cl_lock_slice *slice);
-int ccc_lock_enqueue(const struct lu_env *env,
-                    const struct cl_lock_slice *slice,
-                    struct cl_io *io, struct cl_sync_io *anchor);
 void ccc_io_fini(const struct lu_env *env, const struct cl_io_slice *ios);
 int ccc_io_one_lock_index(const struct lu_env *env, struct cl_io *io,
                          __u32 enqflags, enum cl_lock_mode mode,
@@ -386,16 +356,23 @@ static inline struct inode *vvp_object_inode(const struct cl_object *obj)
 int vvp_object_invariant(const struct cl_object *obj);
 struct vvp_object *cl_inode2vvp(struct inode *inode);
 
-struct ccc_lock *cl2ccc_lock(const struct cl_lock_slice *slice);
+static inline struct page *cl2vm_page(const struct cl_page_slice *slice)
+{
+       return cl2vvp_page(slice)->vpg_page;
+}
+
+static inline struct vvp_lock *cl2vvp_lock(const struct cl_lock_slice *slice)
+{
+       return container_of(slice, struct vvp_lock, vlk_cl);
+}
+
 struct ccc_io *cl2ccc_io(const struct lu_env *env,
                         const struct cl_io_slice *slice);
 struct ccc_req *cl2ccc_req(const struct cl_req_slice *slice);
-struct page *cl2vm_page(const struct cl_page_slice *slice);
 
 int cl_setattr_ost(struct inode *inode, const struct iattr *attr,
                   struct obd_capa *capa);
 
-struct cl_page *ccc_vmpage_page_transient(struct page *vmpage);
 int cl_file_inode_init(struct inode *inode, struct lustre_md *md);
 void cl_inode_fini(struct inode *inode);
 int cl_local_size(struct inode *inode);