scatterlist: add more safeguards
[linux-2.6] / include / linux / raid / linear.h
1 #ifndef _LINEAR_H
2 #define _LINEAR_H
3
4 #include <linux/raid/md.h>
5
6 struct dev_info {
7         mdk_rdev_t      *rdev;
8         sector_t        size;
9         sector_t        offset;
10 };
11
12 typedef struct dev_info dev_info_t;
13
14 struct linear_private_data
15 {
16         struct linear_private_data *prev;       /* earlier version */
17         dev_info_t              **hash_table;
18         sector_t                hash_spacing;
19         sector_t                array_size;
20         int                     preshift; /* shift before dividing by hash_spacing */
21         dev_info_t              disks[0];
22 };
23
24
25 typedef struct linear_private_data linear_conf_t;
26
27 #define mddev_to_conf(mddev) ((linear_conf_t *) mddev->private)
28
29 #endif