Whamcloud - gitweb
LU-11146 lustre: fix setstripe for specific osts upon dir
[fs/lustre-release.git] / lustre / llite / vvp_dev.c
index 288b642..0ceee42 100644 (file)
  *
  * You should have received a copy of the GNU General Public License
  * version 2 along with this program; If not, see
- * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
+ * http://www.gnu.org/licenses/gpl-2.0.html
  *
  * GPL HEADER END
  */
@@ -27,7 +23,7 @@
  * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  *
- * Copyright (c) 2012, 2014, Intel Corporation.
+ * Copyright (c) 2012, 2016, Intel Corporation.
  */
 /*
  * This file is part of Lustre, http://www.lustre.org/
@@ -57,9 +53,7 @@
  */
 
 static struct kmem_cache *ll_thread_kmem;
-struct kmem_cache *vvp_lock_kmem;
 struct kmem_cache *vvp_object_kmem;
-struct kmem_cache *vvp_req_kmem;
 static struct kmem_cache *vvp_session_kmem;
 static struct kmem_cache *vvp_thread_kmem;
 
@@ -70,20 +64,10 @@ static struct lu_kmem_descr vvp_caches[] = {
                .ckd_size  = sizeof(struct ll_thread_info),
        },
        {
-               .ckd_cache = &vvp_lock_kmem,
-               .ckd_name  = "vvp_lock_kmem",
-               .ckd_size  = sizeof(struct vvp_lock),
-       },
-       {
                .ckd_cache = &vvp_object_kmem,
                .ckd_name  = "vvp_object_kmem",
                .ckd_size  = sizeof(struct vvp_object),
        },
-       {
-               .ckd_cache = &vvp_req_kmem,
-               .ckd_name  = "vvp_req_kmem",
-               .ckd_size  = sizeof(struct vvp_req),
-       },
         {
                 .ckd_cache = &vvp_session_kmem,
                 .ckd_name  = "vvp_session_kmem",
@@ -180,10 +164,6 @@ static const struct lu_device_operations vvp_lu_ops = {
         .ldo_object_alloc      = vvp_object_alloc
 };
 
-static const struct cl_device_operations vvp_cl_ops = {
-       .cdo_req_init = vvp_req_init,
-};
-
 static struct lu_device *vvp_device_free(const struct lu_env *env,
                                         struct lu_device *d)
 {
@@ -218,7 +198,6 @@ static struct lu_device *vvp_device_alloc(const struct lu_env *env,
        lud = &vdv->vdv_cl.cd_lu_dev;
        cl_device_init(&vdv->vdv_cl, t);
        vvp2lu_dev(vdv)->ld_ops = &vvp_lu_ops;
-       vdv->vdv_cl.cd_ops = &vvp_cl_ops;
 
        OBD_ALLOC_PTR(site);
        if (site != NULL) {
@@ -328,7 +307,7 @@ int cl_sb_init(struct super_block *sb)
         struct cl_device  *cl;
         struct lu_env     *env;
         int rc = 0;
-        int refcheck;
+       __u16 refcheck;
 
         sbi  = ll_s2sbi(sb);
         env = cl_env_get(&refcheck);
@@ -336,7 +315,6 @@ int cl_sb_init(struct super_block *sb)
                 cl = cl_type_setup(env, NULL, &vvp_device_type,
                                    sbi->ll_dt_exp->exp_obd->obd_lu_dev);
                 if (!IS_ERR(cl)) {
-                       cl2vvp_dev(cl)->vdv_sb = sb;
                         sbi->ll_cl = cl;
                         sbi->ll_site = cl2lu_dev(cl)->ld_site;
                 }
@@ -351,7 +329,7 @@ int cl_sb_fini(struct super_block *sb)
         struct ll_sb_info *sbi;
         struct lu_env     *env;
         struct cl_device  *cld;
-        int                refcheck;
+       __u16              refcheck;
         int                result;
 
         ENTRY;
@@ -408,11 +386,11 @@ struct vvp_pgcache_id {
 
 static void vvp_pgcache_id_unpack(loff_t pos, struct vvp_pgcache_id *id)
 {
-        CLASSERT(sizeof(pos) == sizeof(__u64));
+       CLASSERT(sizeof(pos) == sizeof(__u64));
 
-        id->vpi_index  = pos & 0xffffffff;
-        id->vpi_depth  = (pos >> PGC_DEPTH_SHIFT) & 0xf;
-        id->vpi_bucket = ((unsigned long long)pos >> PGC_OBJ_SHIFT);
+       id->vpi_index  = pos & 0xffffffff;
+       id->vpi_depth  = (pos >> PGC_DEPTH_SHIFT) & 0xf;
+       id->vpi_bucket = ((unsigned long long)pos >> PGC_OBJ_SHIFT);
 }
 
 static loff_t vvp_pgcache_id_pack(struct vvp_pgcache_id *id)
@@ -493,7 +471,7 @@ static loff_t vvp_pgcache_find(const struct lu_env *env,
                                id.vpi_index = vmpage->index;
                                /* Cant support over 16T file */
                                nr = !(vmpage->index > 0xffffffff);
-                               page_cache_release(vmpage);
+                               put_page(vmpage);
                        }
 
                        lu_object_ref_del(&clob->co_lu, "dump", current);
@@ -553,7 +531,7 @@ static int vvp_pgcache_show(struct seq_file *f, void *v)
        struct cl_object        *clob;
        struct lu_env           *env;
        struct vvp_pgcache_id    id;
-       int                      refcheck;
+       __u16                    refcheck;
        int                      result;
 
        env = cl_env_get(&refcheck);
@@ -574,7 +552,7 @@ static int vvp_pgcache_show(struct seq_file *f, void *v)
                                page = cl_vmpage_page(vmpage, clob);
                                unlock_page(vmpage);
 
-                               page_cache_release(vmpage);
+                               put_page(vmpage);
                        }
 
                        seq_printf(f, "%8x@"DFID": ", id.vpi_index,
@@ -599,7 +577,7 @@ static void *vvp_pgcache_start(struct seq_file *f, loff_t *pos)
 {
         struct ll_sb_info *sbi;
         struct lu_env     *env;
-        int                refcheck;
+       __u16              refcheck;
 
         sbi = f->private;
 
@@ -623,7 +601,7 @@ static void *vvp_pgcache_next(struct seq_file *f, void *v, loff_t *pos)
 {
         struct ll_sb_info *sbi;
         struct lu_env     *env;
-        int                refcheck;
+       __u16              refcheck;
 
         env = cl_env_get(&refcheck);
         if (!IS_ERR(env)) {