]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/md/multipath.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[karo-tx-linux.git] / drivers / md / multipath.h
1 #ifndef _MULTIPATH_H
2 #define _MULTIPATH_H
3
4 struct multipath_info {
5         mdk_rdev_t      *rdev;
6 };
7
8 struct multipath_private_data {
9         mddev_t                 *mddev;
10         struct multipath_info   *multipaths;
11         int                     raid_disks;
12         int                     working_disks;
13         spinlock_t              device_lock;
14         struct list_head        retry_list;
15
16         mempool_t               *pool;
17 };
18
19 typedef struct multipath_private_data multipath_conf_t;
20
21 /*
22  * this is our 'private' 'collective' MULTIPATH buffer head.
23  * it contains information about what kind of IO operations were started
24  * for this MULTIPATH operation, and about their status:
25  */
26
27 struct multipath_bh {
28         mddev_t                 *mddev;
29         struct bio              *master_bio;
30         struct bio              bio;
31         int                     path;
32         struct list_head        retry_list;
33 };
34 #endif