~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/admin-guide/device-mapper/striped.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 =========
  2 dm-stripe
  3 =========
  4 
  5 Device-Mapper's "striped" target is used to create a striped (i.e. RAID-0)
  6 device across one or more underlying devices. Data is written in "chunks",
  7 with consecutive chunks rotating among the underlying devices. This can
  8 potentially provide improved I/O throughput by utilizing several physical
  9 devices in parallel.
 10 
 11 Parameters: <num devs> <chunk size> [<dev path> <offset>]+
 12     <num devs>:
 13         Number of underlying devices.
 14     <chunk size>:
 15         Size of each chunk of data. Must be at least as
 16         large as the system's PAGE_SIZE.
 17     <dev path>:
 18         Full pathname to the underlying block-device, or a
 19         "major:minor" device-number.
 20     <offset>:
 21         Starting sector within the device.
 22 
 23 One or more underlying devices can be specified. The striped device size must
 24 be a multiple of the chunk size multiplied by the number of underlying devices.
 25 
 26 
 27 Example scripts
 28 ===============
 29 
 30 ::
 31 
 32   #!/usr/bin/perl -w
 33   # Create a striped device across any number of underlying devices. The device
 34   # will be called "stripe_dev" and have a chunk-size of 128k.
 35 
 36   my $chunk_size = 128 * 2;
 37   my $dev_name = "stripe_dev";
 38   my $num_devs = @ARGV;
 39   my @devs = @ARGV;
 40   my ($min_dev_size, $stripe_dev_size, $i);
 41 
 42   if (!$num_devs) {
 43           die("Specify at least one device\n");
 44   }
 45 
 46   $min_dev_size = `blockdev --getsz $devs[0]`;
 47   for ($i = 1; $i < $num_devs; $i++) {
 48           my $this_size = `blockdev --getsz $devs[$i]`;
 49           $min_dev_size = ($min_dev_size < $this_size) ?
 50                           $min_dev_size : $this_size;
 51   }
 52 
 53   $stripe_dev_size = $min_dev_size * $num_devs;
 54   $stripe_dev_size -= $stripe_dev_size % ($chunk_size * $num_devs);
 55 
 56   $table = "0 $stripe_dev_size striped $num_devs $chunk_size";
 57   for ($i = 0; $i < $num_devs; $i++) {
 58           $table .= " $devs[$i] 0";
 59   }
 60 
 61   `echo $table | dmsetup create $dev_name`;

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php