1 /* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
2 * vim:expandtab:shiftwidth=8:tabstop=8:
6 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 only,
10 * as published by the Free Software Foundation.
12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License version 2 for more details (a copy is included
16 * in the LICENSE file that accompanied this code).
18 * You should have received a copy of the GNU General Public License
19 * version 2 along with this program; If not, see
20 * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
22 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
23 * CA 95054 USA or visit www.sun.com if you need additional information or
29 * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
30 * Use is subject to license terms.
33 * This file is part of Lustre, http://www.lustre.org/
34 * Lustre is a trademark of Sun Microsystems, Inc.
36 * Internal definitions for VVP layer.
38 * Author: Nikita Danilov <nikita.danilov@sun.com>
41 #ifndef VVP_INTERNAL_H
42 #define VVP_INTERNAL_H
45 # error This file is kernel only.
48 #include <cl_object.h>
49 #include "llite_internal.h"
51 int vvp_io_init (const struct lu_env *env,
52 struct cl_object *obj, struct cl_io *io);
53 int vvp_lock_init (const struct lu_env *env,
54 struct cl_object *obj, struct cl_lock *lock,
55 const struct cl_io *io);
56 struct cl_page *vvp_page_init (const struct lu_env *env,
57 struct cl_object *obj,
58 struct cl_page *page, cfs_page_t *vmpage);
59 struct lu_object *vvp_object_alloc(const struct lu_env *env,
60 const struct lu_object_header *hdr,
61 struct lu_device *dev);
63 struct ccc_object *cl_inode2ccc(struct inode *inode);
65 extern cfs_mem_cache_t *vvp_page_kmem;
66 extern cfs_mem_cache_t *vvp_thread_kmem;
68 #endif /* VVP_INTERNAL_H */