diff options
author | Maciej Naruszewicz <maciej.naruszewicz@intel.com> | 2012-10-04 16:34:11 +1000 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2012-10-04 16:34:11 +1000 |
commit | 9eafa1de73d1bd0b2ac0275d1389824825647df7 (patch) | |
tree | 6a6b2d3b380d6f5d83c6e74052fdc3525da427c9 /mdadm.h | |
parent | 12c7b44ebef3971ffff84c4c80dc077ddbe79f60 (diff) |
imsm: Allow to specify controller for --detail-platform.
Usually, 'mdadm --detail-platform -e imsm' scans all the controllers
looking for IMSM capabilities. This patch provides the possibility
to specify a controller to scan, enabling custom usage by other
processes - especially with the --export switch.
$ mdadm --detail-platform
Platform : Intel(R) Matrix Storage Manager
Version : 9.5.0.1037
RAID Levels : raid0 raid1 raid10 raid5
Chunk Sizes : 4k 8k 16k 32k 64k 128k
2TB volumes : supported
2TB disks : not supported
Max Disks : 7
Max Volumes : 2 per array, 4 per controller
I/O Controller : /sys/devices/pci0000:00/0000:00:1f.2 (SATA)
$ mdadm --detail-platform /sys/devices/pci0000:00/0000:00:1f.2
Platform : Intel(R) Matrix Storage Manager
Version : 9.5.0.1037
RAID Levels : raid0 raid1 raid10 raid5
Chunk Sizes : 4k 8k 16k 32k 64k 128k
2TB volumes : supported
2TB disks : not supported
Max Disks : 7
Max Volumes : 2 per array, 4 per controller
I/O Controller : /sys/devices/pci0000:00/0000:00:1f.2 (SATA)
$ mdadm --detail-platform /sys/devices/pci0000:00/0000:00:1f.2 --export
MD_FIRMWARE_TYPE=imsm
IMSM_VERSION=9.5.0.1037
IMSM_SUPPORTED_RAID_LEVELS=raid0 raid1 raid10 raid5
IMSM_SUPPORTED_CHUNK_SIZES=4k 8k 16k 32k 64k 128k
IMSM_2TB_VOLUMES=yes
IMSM_2TB_DISKS=no
IMSM_MAX_DISKS=7
IMSM_MAX_VOLUMES_PER_ARRAY=2
IMSM_MAX_VOLUMES_PER_CONTROLLER=4
$ mdadm --detail-platform /sys/devices/pci0000:00/0000:00:1f.0 # This isn't an IMSM-capable controller
mdadm: no active Intel(R) RAID controller found under /sys/devices/pci0000:00/0000:00:1f.0
Signed-off-by: Maciej Naruszewicz <maciej.naruszewicz@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'mdadm.h')
-rw-r--r-- | mdadm.h | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -659,8 +659,8 @@ extern struct superswitch { void (*export_detail_super)(struct supertype *st); /* Optional: platform hardware / firmware details */ - int (*detail_platform)(int verbose, int enumerate_only); - int (*export_detail_platform)(int verbose); + int (*detail_platform)(int verbose, int enumerate_only, char *controller_path); + int (*export_detail_platform)(int verbose, char *controller_path); /* Used: * to get uuid to storing in bitmap metadata @@ -1127,7 +1127,7 @@ extern int Create(struct supertype *st, char *mddev, struct context *c); extern int Detail(char *dev, struct context *c); -extern int Detail_Platform(struct superswitch *ss, int scan, int verbose, int export); +extern int Detail_Platform(struct superswitch *ss, int scan, int verbose, int export, char *controller_path); extern int Query(char *dev); extern int Examine(struct mddev_dev *devlist, struct context *c, struct supertype *forcest); @@ -1181,6 +1181,7 @@ extern int open_dev_flags(int devnum, int flags); extern int open_dev_excl(int devnum); extern int is_standard(char *dev, int *nump); extern int same_dev(char *one, char *two); +extern int compare_paths (char* path1,char* path2); extern int parse_auto(char *str, char *msg, int config); extern struct mddev_ident *conf_get_ident(char *dev); |