1#ifndef _MULTIPATH_H 2#define _MULTIPATH_H 3 4struct multipath_info { 5 mdk_rdev_t *rdev; 6}; 7 8struct 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 19typedef 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 27struct 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 35