X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Fllite%2Fvvp_internal.h;h=c9240dfa173be548945981b5d1cdda7492faa11c;hb=2e2c8d59cfdb6d7078f9627ca970920059fcf90f;hp=4bd655445e02ff44957c3d077247571740b08367;hpb=427e6a469722cf14b2cd80cec991a4154b4aae50;p=fs%2Flustre-release.git diff --git a/lustre/llite/vvp_internal.h b/lustre/llite/vvp_internal.h index 4bd6554..c9240df 100644 --- a/lustre/llite/vvp_internal.h +++ b/lustre/llite/vvp_internal.h @@ -15,11 +15,7 @@ * * 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) 2002, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. * - * Copyright (c) 2013, 2014, Intel Corporation. + * Copyright (c) 2013, 2016, Intel Corporation. */ /* * This file is part of Lustre, http://www.lustre.org/ @@ -46,9 +42,7 @@ enum obd_notify_event; struct inode; -struct lov_stripe_md; struct lustre_md; -struct obd_capa; struct obd_device; struct obd_export; struct page; @@ -70,16 +64,7 @@ struct vvp_io { /** * I/O vector information to or from which read/write is going. */ - struct iovec *vui_iov; - unsigned long vui_nrsegs; - /** - * Total iov count for left IO. - */ - unsigned long vui_tot_nrsegs; - /** - * Old length for iov that was truncated partially. - */ - size_t vui_iov_olen; + struct iov_iter *vui_iter; /** * Total size for the left IO. */ @@ -91,7 +76,7 @@ struct vvp_io { * Inode modification time that is checked across DLM * lock request. */ - time_t ft_mtime; + time64_t ft_mtime; struct vm_area_struct *ft_vma; /** * locked page returned from vvp_io @@ -148,7 +133,6 @@ extern struct lu_context_key vvp_thread_key; extern struct kmem_cache *vvp_lock_kmem; extern struct kmem_cache *vvp_object_kmem; -extern struct kmem_cache *vvp_req_kmem; struct vvp_thread_info { struct cl_lock vti_lock; @@ -253,6 +237,7 @@ struct vvp_object { struct vvp_page { struct cl_page_slice vpg_cl; unsigned vpg_defer_uptodate:1, + vpg_ra_updated:1, vpg_ra_used:1; /** VM page */ struct page *vpg_page; @@ -270,7 +255,6 @@ static inline pgoff_t vvp_index(struct vvp_page *vpg) struct vvp_device { struct cl_device vdv_cl; - struct super_block *vdv_sb; struct cl_device *vdv_next; }; @@ -278,10 +262,6 @@ struct vvp_lock { struct cl_lock_slice vlk_cl; }; -struct vvp_req { - struct cl_req_slice vrq_cl; -}; - static inline struct lu_device *vvp2lu_dev(struct vvp_device *vdv) { return &vdv->vdv_cl.cd_lu_dev; @@ -330,7 +310,7 @@ static inline struct vvp_lock *cl2vvp_lock(const struct cl_lock_slice *slice) do { \ if (unlikely(!(expr))) { \ LU_OBJECT_DEBUG(D_ERROR, (env), &(clob)->co_lu, \ - #expr "\n"); \ + #expr); \ LINVRNT(0); \ } \ } while (0) @@ -348,8 +328,6 @@ int vvp_lock_init(const struct lu_env *env, struct cl_object *obj, struct cl_lock *lock, const struct cl_io *io); int vvp_page_init(const struct lu_env *env, struct cl_object *obj, struct cl_page *page, pgoff_t index); -int vvp_req_init(const struct lu_env *env, struct cl_device *dev, - struct cl_req *req); struct lu_object *vvp_object_alloc(const struct lu_env *env, const struct lu_object_header *hdr, struct lu_device *dev);