split name/number maps into separate file.
This reduced some interdependencies between files. Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
679eb882fc
commit
32367cb558
21
Makefile
21
Makefile
|
@ -98,7 +98,8 @@ MAN4DIR = $(MANDIR)/man4
|
|||
MAN5DIR = $(MANDIR)/man5
|
||||
MAN8DIR = $(MANDIR)/man8
|
||||
|
||||
OBJS = mdadm.o config.o policy.o mdstat.o ReadMe.o util.o Manage.o Assemble.o Build.o \
|
||||
OBJS = mdadm.o config.o policy.o mdstat.o ReadMe.o util.o maps.o \
|
||||
Manage.o Assemble.o Build.o \
|
||||
Create.o Detail.o Examine.o Grow.o Monitor.o dlink.o Kill.o Query.o \
|
||||
Incremental.o \
|
||||
mdopen.o super0.o super1.o super-ddf.o super-intel.o bitmap.o \
|
||||
|
@ -108,32 +109,24 @@ OBJS = mdadm.o config.o policy.o mdstat.o ReadMe.o util.o Manage.o Assemble.o
|
|||
|
||||
OBJSX = restripe.o
|
||||
|
||||
SRCS = mdadm.c config.c policy.c mdstat.c ReadMe.c util.c Manage.c Assemble.c Build.c \
|
||||
Create.c Detail.c Examine.c Grow.c Monitor.c dlink.c Kill.c Query.c \
|
||||
Incremental.c \
|
||||
mdopen.c super0.c super1.c super-ddf.c super-intel.c bitmap.c \
|
||||
super-mbr.c super-gpt.c \
|
||||
restripe.c sysfs.c sha1.c mapfile.c crc32.c sg_io.c msg.c \
|
||||
platform-intel.c probe_roms.c
|
||||
SRCS = $(patsubst %.o,%.c,$(OBJS))
|
||||
|
||||
INCL = mdadm.h part.h bitmap.h
|
||||
|
||||
MON_OBJS = mdmon.o monitor.o managemon.o util.o mdstat.o sysfs.o config.o policy.o \
|
||||
MON_OBJS = mdmon.o monitor.o managemon.o util.o maps.o mdstat.o sysfs.o \
|
||||
config.o policy.o \
|
||||
Kill.o sg_io.o dlink.o ReadMe.o super0.o super1.o super-intel.o \
|
||||
super-mbr.o super-gpt.o \
|
||||
super-ddf.o sha1.o crc32.o msg.o bitmap.o \
|
||||
platform-intel.o probe_roms.o
|
||||
|
||||
MON_SRCS = mdmon.c monitor.c managemon.c util.c mdstat.c sysfs.c config.c policy.c \
|
||||
Kill.c sg_io.c dlink.c ReadMe.c super0.c super1.c super-intel.c \
|
||||
super-mbr.c super-gpt.c \
|
||||
super-ddf.c sha1.c crc32.c msg.c bitmap.c \
|
||||
platform-intel.c probe_roms.c
|
||||
MON_SRCS = $(patsubst %.o,%.c,$(MON_OBJS))
|
||||
|
||||
STATICSRC = pwgr.c
|
||||
STATICOBJS = pwgr.o
|
||||
|
||||
ASSEMBLE_SRCS := mdassemble.c Assemble.c Manage.c config.c policy.c dlink.c util.c \
|
||||
maps.c \
|
||||
super0.c super1.c super-ddf.c super-intel.c sha1.c crc32.c sg_io.c mdstat.c \
|
||||
platform-intel.c probe_roms.c sysfs.c super-mbr.c super-gpt.c
|
||||
ASSEMBLE_AUTO_SRCS := mdopen.c
|
||||
|
|
106
ReadMe.c
106
ReadMe.c
|
@ -600,109 +600,3 @@ char Help_config[] =
|
|||
"\n"
|
||||
;
|
||||
|
||||
|
||||
/* name/number mappings */
|
||||
|
||||
mapping_t r5layout[] = {
|
||||
{ "left-asymmetric", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "right-asymmetric", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "left-symmetric", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "right-symmetric", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "default", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "la", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "ra", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "ls", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "rs", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "parity-first", ALGORITHM_PARITY_0},
|
||||
{ "parity-last", ALGORITHM_PARITY_N},
|
||||
{ "ddf-zero-restart", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "ddf-N-restart", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "ddf-N-continue", ALGORITHM_LEFT_SYMMETRIC},
|
||||
|
||||
{ NULL, 0}
|
||||
};
|
||||
mapping_t r6layout[] = {
|
||||
{ "left-asymmetric", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "right-asymmetric", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "left-symmetric", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "right-symmetric", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "default", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "la", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "ra", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "ls", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "rs", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "parity-first", ALGORITHM_PARITY_0},
|
||||
{ "parity-last", ALGORITHM_PARITY_N},
|
||||
{ "ddf-zero-restart", ALGORITHM_ROTATING_ZERO_RESTART},
|
||||
{ "ddf-N-restart", ALGORITHM_ROTATING_N_RESTART},
|
||||
{ "ddf-N-continue", ALGORITHM_ROTATING_N_CONTINUE},
|
||||
|
||||
{ "left-asymmetric-6", ALGORITHM_LEFT_ASYMMETRIC_6},
|
||||
{ "right-asymmetric-6", ALGORITHM_RIGHT_ASYMMETRIC_6},
|
||||
{ "left-symmetric-6", ALGORITHM_LEFT_SYMMETRIC_6},
|
||||
{ "right-symmetric-6", ALGORITHM_RIGHT_SYMMETRIC_6},
|
||||
{ "parity-first-6", ALGORITHM_PARITY_0_6},
|
||||
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
||||
mapping_t pers[] = {
|
||||
{ "linear", LEVEL_LINEAR},
|
||||
{ "raid0", 0},
|
||||
{ "0", 0},
|
||||
{ "stripe", 0},
|
||||
{ "raid1", 1},
|
||||
{ "1", 1},
|
||||
{ "mirror", 1},
|
||||
{ "raid4", 4},
|
||||
{ "4", 4},
|
||||
{ "raid5", 5},
|
||||
{ "5", 5},
|
||||
{ "multipath", LEVEL_MULTIPATH},
|
||||
{ "mp", LEVEL_MULTIPATH},
|
||||
{ "raid6", 6},
|
||||
{ "6", 6},
|
||||
{ "raid10", 10},
|
||||
{ "10", 10},
|
||||
{ "faulty", LEVEL_FAULTY},
|
||||
{ "container", LEVEL_CONTAINER},
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
||||
|
||||
mapping_t modes[] = {
|
||||
{ "assemble", ASSEMBLE},
|
||||
{ "build", BUILD},
|
||||
{ "create", CREATE},
|
||||
{ "manage", MANAGE},
|
||||
{ "misc", MISC},
|
||||
{ "monitor", MONITOR},
|
||||
{ "grow", GROW},
|
||||
{ "incremental", INCREMENTAL},
|
||||
{ "auto-detect", AUTODETECT},
|
||||
};
|
||||
|
||||
mapping_t faultylayout[] = {
|
||||
{ "write-transient", WriteTransient },
|
||||
{ "wt", WriteTransient },
|
||||
{ "read-transient", ReadTransient },
|
||||
{ "rt", ReadTransient },
|
||||
{ "write-persistent", WritePersistent },
|
||||
{ "wp", WritePersistent },
|
||||
{ "read-persistent", ReadPersistent },
|
||||
{ "rp", ReadPersistent },
|
||||
{ "write-all", WriteAll },
|
||||
{ "wa", WriteAll },
|
||||
{ "read-fixable", ReadFixable },
|
||||
{ "rf", ReadFixable },
|
||||
|
||||
{ "clear", ClearErrors},
|
||||
{ "flush", ClearFaults},
|
||||
{ "none", ClearErrors},
|
||||
{ "default", ClearErrors},
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
|
|
@ -0,0 +1,153 @@
|
|||
/*
|
||||
* mdadm - manage Linux "md" devices aka RAID arrays.
|
||||
*
|
||||
* Copyright (C) 2011 Neil Brown <neilb@suse.de>
|
||||
*
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*
|
||||
* Author: Neil Brown
|
||||
* Email: <neilb@suse.de>
|
||||
*/
|
||||
|
||||
#include "mdadm.h"
|
||||
|
||||
|
||||
/* name/number mappings */
|
||||
|
||||
mapping_t r5layout[] = {
|
||||
{ "left-asymmetric", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "right-asymmetric", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "left-symmetric", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "right-symmetric", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "default", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "la", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "ra", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "ls", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "rs", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "parity-first", ALGORITHM_PARITY_0},
|
||||
{ "parity-last", ALGORITHM_PARITY_N},
|
||||
{ "ddf-zero-restart", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "ddf-N-restart", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "ddf-N-continue", ALGORITHM_LEFT_SYMMETRIC},
|
||||
|
||||
{ NULL, 0}
|
||||
};
|
||||
mapping_t r6layout[] = {
|
||||
{ "left-asymmetric", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "right-asymmetric", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "left-symmetric", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "right-symmetric", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "default", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "la", ALGORITHM_LEFT_ASYMMETRIC},
|
||||
{ "ra", ALGORITHM_RIGHT_ASYMMETRIC},
|
||||
{ "ls", ALGORITHM_LEFT_SYMMETRIC},
|
||||
{ "rs", ALGORITHM_RIGHT_SYMMETRIC},
|
||||
|
||||
{ "parity-first", ALGORITHM_PARITY_0},
|
||||
{ "parity-last", ALGORITHM_PARITY_N},
|
||||
{ "ddf-zero-restart", ALGORITHM_ROTATING_ZERO_RESTART},
|
||||
{ "ddf-N-restart", ALGORITHM_ROTATING_N_RESTART},
|
||||
{ "ddf-N-continue", ALGORITHM_ROTATING_N_CONTINUE},
|
||||
|
||||
{ "left-asymmetric-6", ALGORITHM_LEFT_ASYMMETRIC_6},
|
||||
{ "right-asymmetric-6", ALGORITHM_RIGHT_ASYMMETRIC_6},
|
||||
{ "left-symmetric-6", ALGORITHM_LEFT_SYMMETRIC_6},
|
||||
{ "right-symmetric-6", ALGORITHM_RIGHT_SYMMETRIC_6},
|
||||
{ "parity-first-6", ALGORITHM_PARITY_0_6},
|
||||
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
||||
mapping_t pers[] = {
|
||||
{ "linear", LEVEL_LINEAR},
|
||||
{ "raid0", 0},
|
||||
{ "0", 0},
|
||||
{ "stripe", 0},
|
||||
{ "raid1", 1},
|
||||
{ "1", 1},
|
||||
{ "mirror", 1},
|
||||
{ "raid4", 4},
|
||||
{ "4", 4},
|
||||
{ "raid5", 5},
|
||||
{ "5", 5},
|
||||
{ "multipath", LEVEL_MULTIPATH},
|
||||
{ "mp", LEVEL_MULTIPATH},
|
||||
{ "raid6", 6},
|
||||
{ "6", 6},
|
||||
{ "raid10", 10},
|
||||
{ "10", 10},
|
||||
{ "faulty", LEVEL_FAULTY},
|
||||
{ "container", LEVEL_CONTAINER},
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
||||
|
||||
mapping_t modes[] = {
|
||||
{ "assemble", ASSEMBLE},
|
||||
{ "build", BUILD},
|
||||
{ "create", CREATE},
|
||||
{ "manage", MANAGE},
|
||||
{ "misc", MISC},
|
||||
{ "monitor", MONITOR},
|
||||
{ "grow", GROW},
|
||||
{ "incremental", INCREMENTAL},
|
||||
{ "auto-detect", AUTODETECT},
|
||||
};
|
||||
|
||||
mapping_t faultylayout[] = {
|
||||
{ "write-transient", WriteTransient },
|
||||
{ "wt", WriteTransient },
|
||||
{ "read-transient", ReadTransient },
|
||||
{ "rt", ReadTransient },
|
||||
{ "write-persistent", WritePersistent },
|
||||
{ "wp", WritePersistent },
|
||||
{ "read-persistent", ReadPersistent },
|
||||
{ "rp", ReadPersistent },
|
||||
{ "write-all", WriteAll },
|
||||
{ "wa", WriteAll },
|
||||
{ "read-fixable", ReadFixable },
|
||||
{ "rf", ReadFixable },
|
||||
|
||||
{ "clear", ClearErrors},
|
||||
{ "flush", ClearFaults},
|
||||
{ "none", ClearErrors},
|
||||
{ "default", ClearErrors},
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
||||
char *map_num(mapping_t *map, int num)
|
||||
{
|
||||
while (map->name) {
|
||||
if (map->num == num)
|
||||
return map->name;
|
||||
map++;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int map_name(mapping_t *map, char *name)
|
||||
{
|
||||
while (map->name) {
|
||||
if (strcmp(map->name, name)==0)
|
||||
return map->num;
|
||||
map++;
|
||||
}
|
||||
return UnSet;
|
||||
}
|
||||
|
22
mdassemble.c
22
mdassemble.c
|
@ -26,28 +26,6 @@
|
|||
#include "mdadm.h"
|
||||
#include "md_p.h"
|
||||
|
||||
/* from readme.c */
|
||||
mapping_t pers[] = {
|
||||
{ "linear", LEVEL_LINEAR},
|
||||
{ "raid0", 0},
|
||||
{ "0", 0},
|
||||
{ "stripe", 0},
|
||||
{ "raid1", 1},
|
||||
{ "1", 1},
|
||||
{ "mirror", 1},
|
||||
{ "raid4", 4},
|
||||
{ "4", 4},
|
||||
{ "raid5", 5},
|
||||
{ "5", 5},
|
||||
{ "multipath", LEVEL_MULTIPATH},
|
||||
{ "mp", LEVEL_MULTIPATH},
|
||||
{ "raid6", 6},
|
||||
{ "6", 6},
|
||||
{ "raid10", 10},
|
||||
{ "10", 10},
|
||||
{ NULL, 0}
|
||||
};
|
||||
|
||||
#ifndef MDASSEMBLE_AUTO
|
||||
/* from mdopen.c */
|
||||
int open_mddev(char *dev, int report_errors/*unused*/)
|
||||
|
|
21
util.c
21
util.c
|
@ -566,27 +566,6 @@ int ask(char *mesg)
|
|||
}
|
||||
#endif /* MDASSEMBLE */
|
||||
|
||||
char *map_num(mapping_t *map, int num)
|
||||
{
|
||||
while (map->name) {
|
||||
if (map->num == num)
|
||||
return map->name;
|
||||
map++;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int map_name(mapping_t *map, char *name)
|
||||
{
|
||||
while (map->name) {
|
||||
if (strcmp(map->name, name)==0)
|
||||
return map->num;
|
||||
map++;
|
||||
}
|
||||
return UnSet;
|
||||
}
|
||||
|
||||
|
||||
int is_standard(char *dev, int *nump)
|
||||
{
|
||||
/* tests if dev is a "standard" md dev name.
|
||||
|
|
Loading…
Reference in New Issue