Whamcloud - gitweb
LU-12780 scrub: all update to bitfields must be protected.
[fs/lustre-release.git] / lustre / llite / vvp_internal.h
index 2302957..bb0d66e 100644 (file)
@@ -245,7 +245,7 @@ static inline struct vvp_page *cl2vvp_page(const struct cl_page_slice *slice)
 
 static inline pgoff_t vvp_index(struct vvp_page *vpg)
 {
-       return vpg->vpg_cl.cpl_index;
+       return vpg->vpg_page->index;
 }
 
 struct vvp_device {
@@ -260,22 +260,22 @@ static inline struct lu_device *vvp2lu_dev(struct vvp_device *vdv)
 
 static inline struct vvp_device *lu2vvp_dev(const struct lu_device *d)
 {
-       return container_of0(d, struct vvp_device, vdv_cl.cd_lu_dev);
+       return container_of_safe(d, struct vvp_device, vdv_cl.cd_lu_dev);
 }
 
 static inline struct vvp_device *cl2vvp_dev(const struct cl_device *d)
 {
-       return container_of0(d, struct vvp_device, vdv_cl);
+       return container_of_safe(d, struct vvp_device, vdv_cl);
 }
 
 static inline struct vvp_object *cl2vvp(const struct cl_object *obj)
 {
-       return container_of0(obj, struct vvp_object, vob_cl);
+       return container_of_safe(obj, struct vvp_object, vob_cl);
 }
 
 static inline struct vvp_object *lu2vvp(const struct lu_object *obj)
 {
-       return container_of0(obj, struct vvp_object, vob_cl.co_lu);
+       return container_of_safe(obj, struct vvp_object, vob_cl.co_lu);
 }
 
 static inline struct inode *vvp_object_inode(const struct cl_object *obj)
@@ -320,8 +320,8 @@ int vvp_global_init(void);
 void vvp_global_fini(void);
 
 #ifndef HAVE_ACCOUNT_PAGE_DIRTIED_EXPORT
-typedef unsigned int (*vvp_account_page_dirtied)(struct page *page,
-                                                struct address_space *mapping);
+extern unsigned int (*vvp_account_page_dirtied)(struct page *page,
+                                               struct address_space *mapping);
 #endif
 
 extern const struct file_operations vvp_dump_pgcache_file_ops;