1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _MULTIPATH_H 3 #define _MULTIPATH_H 4 5 struct multipath_info { 6 struct md_rdev *rdev; 7 }; 8 9 struct mpconf { 10 struct mddev *mddev; 11 struct multipath_info *multipaths; 12 int raid_disks; 13 spinlock_t device_lock; 14 struct list_head retry_list; 15 16 mempool_t *pool; 17 }; 18 19 /* 20 * this is our 'private' 'collective' MULTIPATH buffer head. 21 * it contains information about what kind of IO operations were started 22 * for this MULTIPATH operation, and about their status: 23 */ 24 25 struct multipath_bh { 26 struct mddev *mddev; 27 struct bio *master_bio; 28 struct bio bio; 29 int path; 30 struct list_head retry_list; 31 }; 32 #endif 33