From: Wim Coekaerts Date: Mon Feb 9 16:20:18 2004 Subject: [Ocfs2-devel] [PATCH][2.6 PORT] more ocfs.h cleanup In-Reply-To: <200402092045.i19KjlKM000935@penguin.co.intel.com> References: <200402092045.i19KjlKM000935@penguin.co.intel.com> Message-ID: <20040209222014.GP27415@ca-server1.us.oracle.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: ocfs2-devel@oss.oracle.com cool thanks Rusty, we ll have a loko at it, Mark has a little car accident ove rthe weekend so I don't think he will be in today (not sure bout his status) Wim On Mon, Feb 09, 2004 at 12:45:47PM -0800, Rusty Lynch wrote: > The following is a patch that cleans up src/inc/ocfs.h in another step > towards a port to the 2.6 kernel. > > --rusty > > Index: src/inc/ocfs.h > =================================================================== > --- src/inc/ocfs.h (revision 29) > +++ src/inc/ocfs.h (working copy) > @@ -5,19 +5,6 @@ > struct mem_dqinfo; > extern inline void mark_info_dirty(struct mem_dqinfo *info); > > -#ifndef LINUX_2_5 > -#ifdef __ia64__ > -extern inline void prefetch(const void *x); > -extern inline void prefetchw(const void *x); > -#else > -static inline void prefetch(const void *x); > -static inline void prefetchw(const void *x); > -#endif > -extern inline int generic_fls(int x); > -extern inline int get_bitmask_order(unsigned int count); > -#endif /* !LINUX_2_5 */ > - > - > /* > ** System header files > */ > @@ -30,8 +17,20 @@ > #include > #include > #include > + > +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) > +#ifdef __ia64__ > +extern inline void prefetch(const void *x); > +extern inline void prefetchw(const void *x); > +#else > +static inline void prefetch(const void *x); > +static inline void prefetchw(const void *x); > +#endif > +extern inline int generic_fls(int x); > +extern inline int get_bitmask_order(unsigned int count); > +#endif /* 2.4 kernel */ > + > #include > -#include > #include > #include > #include > @@ -41,7 +40,7 @@ > #include > #include > #include > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > #include > #else > #include > @@ -56,13 +55,13 @@ > #include > #include > #include > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > #include > #else > #include > #endif > #include > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > #include > #include > #include > @@ -71,8 +70,6 @@ > > #include "journal.h" > > - > - > typedef enum { false = 0, true = 1 } ocfs_bool; > > /* This should be removed and all old code fixed to just use ocfs_bool */ > @@ -90,7 +87,6 @@ > #define OCFS_GCC_ATTR_PACKALGN > #endif > > - > enum > { > OCFS_VOTE_REQUEST = 1, > @@ -116,19 +112,16 @@ > REMASTER_REQUESTOR // remaster lock to requestor > }; > > - > enum { > NOT_VOTING = 0, > DOING_HEARTBEAT, > SKIPPED_HEARTBEAT > }; > > - > #define OCFS_MAX_DLM_PKT_SIZE 256 > #define OCFS_DLM_MAX_MSG_SIZE 256 > #define OCFS_DLM_MSG_MAGIC 0x79677083 > > - > enum { > OSB_DATA_LOCK, > OSB_MD_LOCK, > @@ -179,7 +172,7 @@ > #endif > > > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > #define OcfsQuerySystemTime(t) \ > do { \ > *t = (__u64)(CURRENT_TIME.tv_sec) * (__u64) 10000000; \ > @@ -1084,7 +1077,7 @@ > #define OCFS_IOC_GETTYPE _IOR(OCFS_IOC_MAGIC, 1, struct ocfs_ioc) > > > -#ifndef LINUX_2_5 > +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) > typedef long sector_t; > #define map_bh(bh, sb, blk) \ > ({ \ > @@ -1094,12 +1087,12 @@ > }) > #endif > > -#ifndef LINUX_2_5 > +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) > #include > #endif /* for 2.5 - no more kiovec, kiobuf structures - vfs handles > * this for us (direct i/o) */ > #include > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > #include > #endif > > @@ -1113,48 +1106,32 @@ > #endif > > /* Operates on a struct super_block * */ > -#ifdef LINUX_2_5 > -#define OCFS_SB_GET_KDEV(sb) (to_kdev_t(sb->s_dev)) > -#define OCFS_SET_INODE_DEV(sb, inode) (inode->i_rdev = OCFS_SB_GET_KDEV(sb)) > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > +#define OCFS_SET_INODE_DEV(sb, inode) (inode->i_rdev = sb->sdev) > typedef struct block_device * ocfs_blockdev; > typedef dev_t ocfs_dev; > #define OCFS_NODEV NODEV.value > #define OCFS_GET_BLOCKDEV(sb) ((sb)->s_bdev) > -#else > -#define OCFS_SB_GET_KDEV(sb) (sb->s_dev) > -#define OCFS_SET_INODE_DEV(sb, inode) (inode->i_dev = OCFS_SB_GET_KDEV(sb)) > +#else /* 2.4 kernel */ > +#define OCFS_SET_INODE_DEV(sb, inode) (inode->i_dev = sb->s_dev) > typedef kdev_t ocfs_blockdev; > typedef int ocfs_dev; > #define OCFS_NODEV NODEV > #define OCFS_GET_BLOCKDEV(sb) ((sb)->s_dev) > #endif > > - > - > - > -//#if LINUX_VERSION_CODE >= LinuxVersionCode(2,5,0) > - > -//#ifndef LINUX_2_5 > -//#define LINUX_2_5 > -//#endif > - > -//#endif > - > -#if LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > /* No longer exists in 2.5 */ > #define fsync_inode_buffers(inode) sync_mapping_buffers(inode->i_mapping) > #define getblk(dev, blk, sz) __getblk(dev, blk, sz) > -#define MOD_INC_USE_COUNT do { } while(0) > -#define MOD_DEC_USE_COUNT do { } while(0) > -#endif /* LINUX_2_5 */ > +#endif /* >= 2.6.0 */ > > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > #define OCFS_GENERIC_SB_P(sb) ((ocfs_super *)(sb->s_fs_info)) > #else > #define OCFS_GENERIC_SB_P(sb) ((ocfs_super *)(sb->u.generic_sbp)) > #endif > > - > extern __u32 debug_context; > extern __u32 debug_level; > extern __u32 debug_exclude; > @@ -1553,7 +1530,11 @@ > struct semaphore s_sem; > struct list_head s_list; > unsigned long s_blocknr; > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > + dev_t s_dev; > +#else > kdev_t s_dev; > +#endif > atomic_t s_refcnt; > struct buffer_head *s_bh; > wait_queue_head_t s_wait; > @@ -2345,7 +2326,7 @@ > __s32 msg_len; > __u8 msg[OCFS_MAX_DLM_PKT_SIZE]; > int status; > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > struct work_struct ipc_wq; > #else > struct tq_struct ipc_tq; > @@ -2364,7 +2345,7 @@ > > typedef struct _ocfs_cfg_task > { > -#ifdef LINUX_2_5 > +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) > struct work_struct cfg_wq; > #else > struct tq_struct cfg_tq; > _______________________________________________ > Ocfs2-devel mailing list > Ocfs2-devel@oss.oracle.com > http://oss.oracle.com/mailman/listinfo/ocfs2-devel