X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flustre_lite.h;h=d03daabcac7a57970a47600339bb48a8819fc0d5;hb=0ddcb9b4671365d6cfd2d5ef2b4dd3f78d2610bb;hp=86e92f1ebc2c8113e0f17e4799d6bc715fee28b6;hpb=debd88622fdf5657f46289d80510f95604d633cd;p=fs%2Flustre-release.git diff --git a/lustre/include/lustre_lite.h b/lustre/include/lustre_lite.h index 86e92f1..d03daab 100644 --- a/lustre/include/lustre_lite.h +++ b/lustre/include/lustre_lite.h @@ -1,6 +1,4 @@ -/* -*- 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. @@ -26,8 +24,10 @@ * GPL HEADER END */ /* - * Copyright 2008 Sun Microsystems, Inc. All rights reserved + * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. + * + * Copyright (c) 2011, 2012, Whamcloud, Inc. */ /* * This file is part of Lustre, http://www.lustre.org/ @@ -37,6 +37,11 @@ #ifndef _LL_H #define _LL_H +/** \defgroup lite lite + * + * @{ + */ + #if defined(__linux__) #include #elif defined(__APPLE__) @@ -53,13 +58,6 @@ #include #include -#ifdef __KERNEL__ - -/* careful, this is easy to screw up */ -#define PAGE_CACHE_MAXBYTES ((__u64)(~0UL) << CFS_PAGE_SHIFT) - -#endif - /* 4UL * 1024 * 1024 */ #define LL_MAX_BLKSIZE_BITS (22) #define LL_MAX_BLKSIZE (1UL<lco_lock. */ - __u64 lco_flags; - struct semaphore lco_lock; + __u64 lco_flags; + cfs_mutex_t lco_lock; struct obd_export *lco_md_exp; struct obd_export *lco_dt_exp; }; @@ -145,8 +143,15 @@ static inline void ll_dir_chain_fini(struct ll_dir_chain *chain) { } -static inline unsigned long hash_x_index(unsigned long value) +static inline unsigned long hash_x_index(__u64 hash, int hash64) { - return ~0UL - value; +#ifdef __KERNEL__ + if (BITS_PER_LONG == 32 && hash64) + hash >>= 32; +#endif + return ~0UL - hash; } + +/** @} lite */ + #endif