#include <linux/stat.h>
 #include <linux/vmalloc.h>
 #include <linux/slab.h>
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
 #include <linux/semaphore.h>
-#else
-#include <asm/semaphore.h>
-#endif
 #include <asm/uaccess.h>
 #include <linux/proc_fs.h>
 #include <linux/blkdev.h>
 static long int cowlo_readcowraw (struct cowloop_device *, void *, int, loff_t);
 static long int cowlo_writecow   (struct cowloop_device *, void *, int, loff_t);
 static long int cowlo_writecowraw(struct cowloop_device *, void *, int, loff_t);
-
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
 static int      cowlo_ioctl      (struct block_device *, fmode_t,
                                                unsigned int, unsigned long);
-#else
-static int      cowlo_ioctl      (struct inode *, struct file *,
-                                               unsigned int, unsigned long);
-#endif
-
 static int     cowlo_makepair    (struct cowpair __user *);
 static int     cowlo_removepair  (unsigned long  __user *);
 static int     cowlo_watch       (struct cowpair __user *);
 **     0   - okay
 **    < 0   - error value
 */
-static int
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
-cowlo_open(struct block_device *bdev, fmode_t mode)
-#else
-cowlo_open(struct inode *inode, struct file *file)
-#endif
+static int cowlo_open(struct block_device *bdev, fmode_t mode)
 {
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
        struct inode *inode = bdev->bd_inode;
-#endif
+
        if (!inode)
                return -EINVAL;
 
 ** returns:
 **     0   - okay
 */
-static int
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
-cowlo_release(struct gendisk *gd, fmode_t mode)
-#else
-cowlo_release(struct inode *inode, struct file *file)
-#endif
+static int cowlo_release(struct gendisk *gd, fmode_t mode)
 {
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
        struct block_device *bdev;
        struct inode *inode;
 
        bdev = bdget_disk(gd, 0);
        inode = bdev->bd_inode;
-#endif
        if (!inode)
                return 0;
 
 **     0   - okay
 **    < 0   - error value
 */
-static int
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
-cowlo_ioctl(struct block_device *bdev, fmode_t mode,
-            unsigned int cmd, unsigned long arg)
-#else
-cowlo_ioctl(struct inode *inode, struct file *filp,
-            unsigned int cmd, unsigned long arg)
-#endif
+static int cowlo_ioctl(struct block_device *bdev, fmode_t mode,
+                      unsigned int cmd, unsigned long arg)
 {
        struct hd_geometry      geo;
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28))
        struct inode *inode = bdev->bd_inode;
-#endif
 
        DEBUGP(DCOW "cowloop - ioctl cmd %x\n", cmd);
 
 ** function to be called by core-kernel to handle the I/O-requests
 ** in the queue
 */
-static void
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25))
-cowlo_request(struct request_queue *q)
-#else
-cowlo_request(request_queue_t *q)
-#endif
+static void cowlo_request(struct request_queue *q)
 {
        struct request          *req;
        struct cowloop_device   *cowdev;
             (cowdev->cowwrites    % SPCDFLINTVL == 0) ) {
                struct kstatfs          ks;
 
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18))
                if (vfs_statfs(cowdev->cowfp->f_dentry, &ks)==0){
-#else
-               if (vfs_statfs(cowdev->cowfp->f_dentry->d_inode->i_sb, &ks)==0){
-#endif
                        if (ks.f_bavail <= SPCMINBLK) {
                                switch (ks.f_bavail) {
                                   case 0:
        /*
        ** administer total and available size of filesystem holding cowfile
        */
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18))
-               if (vfs_statfs(cowdev->cowfp->f_dentry, &ks)==0){
-#else
-               if (vfs_statfs(cowdev->cowfp->f_dentry->d_inode->i_sb, &ks)==0){
-#endif
+       if (vfs_statfs(cowdev->cowfp->f_dentry, &ks)==0) {
                cowdev->blksize  = ks.f_bsize;
                cowdev->blktotal = ks.f_blocks;
                cowdev->blkavail = ks.f_bavail;
                        cowdev->belowq = cowdev->belowgd->queue;
 
                        if (cowdev->numblocks == 0) {
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27))
                                cowdev->numblocks = get_capacity(cowdev->belowgd)
                                                                / (MAPUNIT/512);
-#else
-                               cowdev->numblocks = cowdev->belowgd->capacity
-                                                               / (MAPUNIT/512);
-#endif
                        }
                }
 
        for (minor=0; minor < maxcows;  minor++)
                (void) cowlo_closepair(cowdevall[minor]);
 
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23))
        unregister_blkdev(COWMAJOR, DEVICE_NAME);
-#else
-       if (unregister_blkdev(COWMAJOR, DEVICE_NAME) != 0)
-               printk(KERN_WARNING "cowloop - cannot unregister blkdev\n");
-#endif
 
        /*
        ** get rid of /proc/cow and unregister the driver