X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flinux%2Flvfs_linux.h;h=e38ee13f8a9d6245b6bbd522d0abbea5f10b791d;hb=3181280b226bdd1dfd4026e1fd70b1915caefc98;hp=c7b0f7d679bcbfc5a0a4c141e67c63aad27137ba;hpb=418d83a1b8d336fb9867cf8a033293975bb51161;p=fs%2Flustre-release.git diff --git a/lustre/include/linux/lvfs_linux.h b/lustre/include/linux/lvfs_linux.h index c7b0f7d..e38ee13 100644 --- a/lustre/include/linux/lvfs_linux.h +++ b/lustre/include/linux/lvfs_linux.h @@ -1,15 +1,46 @@ /* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*- * vim:expandtab:shiftwidth=8:tabstop=8: + * + * GPL HEADER START + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 only, + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License version 2 for more details (a copy is included + * in the LICENSE file that accompanied this code). + * + * 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. + * + * GPL HEADER END */ +/* + * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. + * Use is subject to license terms. + */ +/* + * This file is part of Lustre, http://www.lustre.org/ + * Lustre is a trademark of Sun Microsystems, Inc. + */ + #ifndef __LVFS_LINUX_H__ #define __LVFS_LINUX_H__ #include #include #include -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)) #include -#endif #include #include @@ -25,14 +56,14 @@ struct l_file *l_dentry_open(struct lvfs_run_ctxt *, struct l_dentry *, int flags); struct l_linux_dirent { - struct list_head lld_list; + cfs_list_t lld_list; ino_t lld_ino; unsigned long lld_off; char lld_name[LL_FID_NAMELEN]; }; struct l_readdir_callback { struct l_linux_dirent *lrc_dirent; - struct list_head *lrc_list; + cfs_list_t *lrc_list; }; #define LVFS_DENTRY_PARAM_MAGIC 20070216UL @@ -44,26 +75,21 @@ struct lvfs_dentry_params }; #define LVFS_DENTRY_PARAMS_INIT { .ldp_magic = LVFS_DENTRY_PARAM_MAGIC } -# if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)) -# define BDEVNAME_DECLARE_STORAGE(foo) char foo[BDEVNAME_SIZE] -# define ll_bdevname(SB, STORAGE) __bdevname(kdev_t_to_nr(SB->s_dev), STORAGE) -# define lvfs_sbdev(SB) ((SB)->s_bdev) -# define lvfs_sbdev_type struct block_device * - int fsync_bdev(struct block_device *); -# define lvfs_sbdev_sync fsync_bdev -# else -# define BDEVNAME_DECLARE_STORAGE(foo) char __unused_##foo -# define ll_bdevname(SB,STORAGE) ((void)__unused_##STORAGE,bdevname(lvfs_sbdev(SB))) -# define lvfs_sbdev(SB) (kdev_t_to_nr((SB)->s_dev)) -# define lvfs_sbdev_type kdev_t -# define lvfs_sbdev_sync fsync_dev -# endif +#define BDEVNAME_DECLARE_STORAGE(foo) char foo[BDEVNAME_SIZE] +#define ll_bdevname(SB, STORAGE) __bdevname(kdev_t_to_nr(SB->s_dev), STORAGE) +#define lvfs_sbdev(SB) ((SB)->s_bdev) +#define lvfs_sbdev_type struct block_device * +#define lvfs_sbdev_sync fsync_bdev + +int fsync_bdev(struct block_device *); /* Instead of calling within lvfs (a layering violation) */ #define lvfs_set_rdonly(obd, sb) \ __lvfs_set_rdonly(lvfs_sbdev(sb), fsfilt_journal_sbdev(obd, sb)) void __lvfs_set_rdonly(lvfs_sbdev_type dev, lvfs_sbdev_type jdev); + int lvfs_check_rdonly(lvfs_sbdev_type dev); +void lvfs_clear_rdonly(lvfs_sbdev_type dev); #endif /* __LVFS_LINUX_H__ */