source: svn/branches/kctv/newcon3bcm2_21bu/toolchain/mips-linux-uclibc/include/linux/raid/multipath.h

Last change on this file was 2, checked in by phkim, 11 years ago

1.phkim

  1. revision copy newcon3sk r27
  • Property svn:executable set to *
File size: 912 bytes
Line 
1#ifndef _MULTIPATH_H
2#define _MULTIPATH_H
3
4#include <linux/raid/md.h>
5
6struct multipath_info {
7        mdk_rdev_t      *rdev;
8};
9
10struct multipath_private_data {
11        mddev_t                 *mddev;
12        struct multipath_info   *multipaths;
13        int                     raid_disks;
14        int                     working_disks;
15        spinlock_t              device_lock;
16        struct list_head        retry_list;
17
18        mempool_t               *pool;
19};
20
21typedef struct multipath_private_data multipath_conf_t;
22
23/*
24 * this is the only point in the RAID code where we violate
25 * C type safety. mddev->private is an 'opaque' pointer.
26 */
27#define mddev_to_conf(mddev) ((multipath_conf_t *) mddev->private)
28
29/*
30 * this is our 'private' 'collective' MULTIPATH buffer head.
31 * it contains information about what kind of IO operations were started
32 * for this MULTIPATH operation, and about their status:
33 */
34
35struct multipath_bh {
36        mddev_t                 *mddev;
37        struct bio              *master_bio;
38        struct bio              bio;
39        int                     path;
40        struct list_head        retry_list;
41};
42#endif
Note: See TracBrowser for help on using the repository browser.