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 | |