summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorAndrew Morton <akpm@digeo.com>2002-10-08 18:37:30 -0700
committerPatrick Mochel <mochel@osdl.org>2002-10-08 18:37:30 -0700
commit6179fd182aac68edacdf20dd0c264d64bce8410e (patch)
tree44dbc23c94879f0cdbf4d957f93a27c1e43dfbfc /include/linux
parentbe48ef9e5c863cdb1296c33fddf8e87849e67068 (diff)
[PATCH] 64-bit sector_t - driver changes
From Peter Chubb Compaq Smart array sector_t cleanup: prepare for possible 64-bit sector_t Clean up loop device to allow huge backing files. MD transition to 64-bit sector_t. - Hold sizes and offsets as sector_t not int; - use 64-bit arithmetic if necessary to map block-in-raid to zone and block-in-zone
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/loop.h4
-rw-r--r--include/linux/raid/md.h2
-rw-r--r--include/linux/raid/md_k.h6
-rw-r--r--include/linux/raid/raid0.h6
4 files changed, 9 insertions, 9 deletions
diff --git a/include/linux/loop.h b/include/linux/loop.h
index e2db7af9a438..116980ee5daa 100644
--- a/include/linux/loop.h
+++ b/include/linux/loop.h
@@ -33,7 +33,7 @@ struct loop_device {
int lo_flags;
int (*transfer)(struct loop_device *, int cmd,
char *raw_buf, char *loop_buf, int size,
- int real_block);
+ sector_t real_block);
char lo_name[LO_NAME_SIZE];
char lo_encrypt_key[LO_KEY_SIZE];
__u32 lo_init[2];
@@ -123,7 +123,7 @@ struct loop_info {
struct loop_func_table {
int number; /* filter type */
int (*transfer)(struct loop_device *lo, int cmd, char *raw_buf,
- char *loop_buf, int size, int real_block);
+ char *loop_buf, int size, sector_t real_block);
int (*init)(struct loop_device *, struct loop_info *);
/* release is called from loop_unregister_transfer or clr_fd */
int (*release)(struct loop_device *);
diff --git a/include/linux/raid/md.h b/include/linux/raid/md.h
index e8acacc1adb2..ff0538dae18c 100644
--- a/include/linux/raid/md.h
+++ b/include/linux/raid/md.h
@@ -60,7 +60,7 @@
#define MD_MINOR_VERSION 90
#define MD_PATCHLEVEL_VERSION 0
-extern int md_size[MAX_MD_DEVS];
+extern sector_t md_size[MAX_MD_DEVS];
extern inline char * bdev_partition_name (struct block_device *bdev)
{
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h
index 2f72d0213f99..b088c30951bd 100644
--- a/include/linux/raid/md_k.h
+++ b/include/linux/raid/md_k.h
@@ -144,7 +144,7 @@ struct mdk_rdev_s
{
struct list_head same_set; /* RAID devices within the same set */
- unsigned long size; /* Device size (in blocks) */
+ sector_t size; /* Device size (in blocks) */
mddev_t *mddev; /* RAID array if running */
unsigned long last_events; /* IO event timestamp */
@@ -152,7 +152,7 @@ struct mdk_rdev_s
struct page *sb_page;
mdp_super_t *sb;
- unsigned long sb_offset;
+ sector_t sb_offset;
/* A device can be in one of three states based on two flags:
* Not working: faulty==1 in_sync==0
@@ -350,5 +350,5 @@ do { \
__wait_disk_event(wq, condition); \
} while (0)
-#endif
+#endif
diff --git a/include/linux/raid/raid0.h b/include/linux/raid/raid0.h
index 0b93729576cd..c2d5dcd52fab 100644
--- a/include/linux/raid/raid0.h
+++ b/include/linux/raid/raid0.h
@@ -5,9 +5,9 @@
struct strip_zone
{
- unsigned long zone_offset; /* Zone offset in md_dev */
- unsigned long dev_offset; /* Zone offset in real dev */
- unsigned long size; /* Zone size */
+ sector_t zone_offset; /* Zone offset in md_dev */
+ sector_t dev_offset; /* Zone offset in real dev */
+ sector_t size; /* Zone size */
int nb_dev; /* # of devices attached to the zone */
mdk_rdev_t *dev[MD_SB_DISKS]; /* Devices attached to the zone */
};