[PATCH] cciss/cpqarray/md should use generic BLKGETSIZE

From: Christoph Hellwig (hch@sgi.com)
Date: Thu Jan 16 2003 - 16:40:28 EST


I did that already in 2.4.9/2.4.10 timeframe but it looks like a few
offenders started duplicating code again..

--- 1.28/drivers/block/cciss.c Thu Dec 12 17:14:12 2002
+++ edited/drivers/block/cciss.c Wed Jan 15 23:15:36 2003
@@ -505,16 +505,12 @@
                         return -EFAULT;
                 return 0;
         }
- case BLKGETSIZE:
- put_user(hba[ctlr]->hd[MINOR(inode->i_rdev)].nr_sects, (unsigned long *)arg);
- return 0;
- case BLKGETSIZE64:
- put_user((u64)hba[ctlr]->hd[MINOR(inode->i_rdev)].nr_sects << 9, (u64*)arg);
- return 0;
         case BLKRRPART:
                 if (!capable(CAP_SYS_ADMIN))
                         return -EPERM;
                 return revalidate_logvol(inode->i_rdev, 1);
+ case BLKGETSIZE:
+ case BLKGETSIZE64:
         case BLKFLSBUF:
         case BLKBSZSET:
         case BLKBSZGET:
===== drivers/block/cpqarray.c 1.27 vs edited =====
--- 1.27/drivers/block/cpqarray.c Tue Dec 17 00:26:25 2002
+++ edited/drivers/block/cpqarray.c Wed Jan 15 23:16:02 2003
@@ -1279,13 +1279,6 @@
                 ida_ioctl_t *io = (ida_ioctl_t*)arg;
                 return copy_to_user(&io->c.drv,&hba[ctlr]->drv[dsk],sizeof(drv_info_t));
         }
- case BLKGETSIZE:
- if (!arg)
- return -EINVAL;
- return put_user(hba[ctlr]->hd[MINOR(inode->i_rdev)].nr_sects,
- (unsigned long *)arg);
- case BLKGETSIZE64:
- return put_user((u64)(hba[ctlr]->hd[MINOR(inode->i_rdev)].nr_sects) << 9, (u64*)arg);
         case BLKRRPART:
                 return revalidate_logvol(inode->i_rdev, 1);
         case IDAPASSTHRU:
@@ -1379,6 +1372,8 @@
                 return(0);
         }
 
+ case BLKGETSIZE:
+ case BLKGETSIZE64:
         case BLKFLSBUF:
         case BLKBSZSET:
         case BLKBSZGET:
===== drivers/md/md.c 1.37 vs edited =====
--- 1.37/drivers/md/md.c Fri Jan 3 00:45:34 2003
+++ edited/drivers/md/md.c Wed Jan 15 23:15:01 2003
@@ -2617,21 +2617,8 @@
                         goto done;
 #endif
 
- case BLKGETSIZE: /* Return device size */
- if (!arg) {
- err = -EINVAL;
- MD_BUG();
- goto abort;
- }
- err = md_put_user(md_hd_struct[minor].nr_sects,
- (unsigned long *) arg);
- goto done;
-
- case BLKGETSIZE64: /* Return device size */
- err = md_put_user((u64)md_hd_struct[minor].nr_sects << 9,
- (u64 *) arg);
- goto done;
-
+ case BLKGETSIZE:
+ case BLKGETSIZE64:
                 case BLKRAGET:
                 case BLKRASET:
                 case BLKFLSBUF:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jan 23 2003 - 22:00:13 EST