Lines Matching +full:level +full:- +full:detect
1 // SPDX-License-Identifier: GPL-2.0
9 #include <linux/raid/detect.h>
33 int level; member
41 * Parse the command-line parameters given our kernel, but do not
43 * md_setup_drive after the low-level disk drivers have initialised.
49 * instead of just one. -- KTK
50 * 18May2000: Added support for persistent-superblock arrays:
51 * md=n,0,factor,fault,device-list uses RAID0 for device n
52 * md=n,-1,factor,fault,device-list uses LINEAR for device n
53 * md=n,device-list reads a RAID superblock from the devices
54 * elements in device-list are read by name_to_kdev_t so can be
56 * 2001-06-03: Dave Cinege <dcinege@psychosis.com>
62 int minor, level, factor, fault, partitioned = 0; in md_setup() local
84 printk(KERN_WARNING "md: md=%s%d - too many md initialisations\n", partitioned?"d":"", minor); in md_setup()
89 switch (get_option(&str, &level)) { /* RAID level */ in md_setup()
90 case 2: /* could be 0 or -1.. */ in md_setup()
91 if (level == 0 || level == LEVEL_LINEAR) { in md_setup()
97 md_setup_args[ent].level = level; in md_setup()
99 if (level == LEVEL_LINEAR) in md_setup()
110 md_setup_args[ent].level = LEVEL_NONE; in md_setup()
111 pername="super-block"; in md_setup()
125 char *devname = args->device_names; in md_setup_drive()
132 if (args->partitioned) { in md_setup_drive()
133 mdev = MKDEV(mdp_major, args->minor << MdpMinorShift); in md_setup_drive()
134 sprintf(name, "md_d%d", args->minor); in md_setup_drive()
136 mdev = MKDEV(MD_MAJOR, args->minor); in md_setup_drive()
137 sprintf(name, "md%d", args->minor); in md_setup_drive()
170 pr_info("md: Loading %s: %s\n", name, args->device_names); in md_setup_drive()
174 pr_err("md: md_alloc failed - cannot start array %s\n", name); in md_setup_drive()
184 if (!list_empty(&mddev->disks) || mddev->raid_disks) { in md_setup_drive()
190 if (args->level != LEVEL_NONE) { in md_setup_drive()
191 /* non-persistent */ in md_setup_drive()
192 ainfo.level = args->level; in md_setup_drive()
193 ainfo.md_minor = args->minor; in md_setup_drive()
196 ainfo.chunk_size = args->chunk; in md_setup_drive()
209 if (args->level != LEVEL_NONE) { in md_setup_drive()
240 wlen = (comma-str)-pos; in raid_setup()
241 else wlen = (len-1)-pos; in raid_setup()
262 * Since we don't want to detect and use half a raid array, we need to in autodetect_raid()