]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/blob - include/linux/raid/raid0.h
Linux-2.6.12-rc2
[mirror_ubuntu-disco-kernel.git] / include / linux / raid / raid0.h
1 #ifndef _RAID0_H
2 #define _RAID0_H
3
4 #include <linux/raid/md.h>
5
6 struct strip_zone
7 {
8 sector_t zone_offset; /* Zone offset in md_dev */
9 sector_t dev_offset; /* Zone offset in real dev */
10 sector_t size; /* Zone size */
11 int nb_dev; /* # of devices attached to the zone */
12 mdk_rdev_t **dev; /* Devices attached to the zone */
13 };
14
15 struct raid0_private_data
16 {
17 struct strip_zone **hash_table; /* Table of indexes into strip_zone */
18 struct strip_zone *strip_zone;
19 mdk_rdev_t **devlist; /* lists of rdevs, pointed to by strip_zone->dev */
20 int nr_strip_zones;
21
22 sector_t hash_spacing;
23 int preshift; /* shift this before divide by hash_spacing */
24 };
25
26 typedef struct raid0_private_data raid0_conf_t;
27
28 #define mddev_to_conf(mddev) ((raid0_conf_t *) mddev->private)
29
30 #endif