4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 only,
8 * as published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License version 2 for more details (a copy is included
14 * in the LICENSE file that accompanied this code).
16 * You should have received a copy of the GNU General Public License
17 * version 2 along with this program; If not, see
18 * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
20 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
21 * CA 95054 USA or visit www.sun.com if you need additional information or
27 * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
28 * Use is subject to license terms.
31 * This file is part of Lustre, http://www.lustre.org/
32 * Lustre is a trademark of Sun Microsystems, Inc.
35 #ifndef __DARWIN_LUSTRE_COMPAT_H__
36 #define __DARWIN_LUSTRE_COMPAT_H__
38 #include <libcfs/libcfs.h>
43 #define hlist_entry list_entry
44 #define hlist_head list_head
45 #define hlist_node list_head
46 #define hlist_del_init list_del_init
47 #define hlist_add_head list_add
48 #define hlist_for_each_safe list_for_each_safe
51 #define LOOKUP_COBD 4096
56 static inline int try_module_get(struct module *module)
61 static inline void module_put(struct module *module)
65 #define THIS_MODULE NULL
67 static inline void lustre_daemonize_helper(void)
72 static inline int32_t ext2_set_bit(int nr, void *a)
74 int32_t old = test_bit(nr, a);
79 static inline int32_t ext2_clear_bit(int nr, void *a)
81 int32_t old = test_bit(nr, a);
88 #if !defined(__DARWIN8__)
89 static inline int ll_path_lookup(const char *path, unsigned int flags, struct nameidata *nd)
92 NDINIT(nd, LOOKUP, FOLLOW, UIO_SYSSPACE, (char *)path, current_proc());
94 CERROR("ll_path_lookup fail!\n");
100 #define ext2_test_bit test_bit
102 #endif /* __KERNEL__ */