File: reverse_dev

package info (click to toggle)
devmapper 2%3A1.01.00-4sarge1
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 4,044 kB
  • ctags: 2,336
  • sloc: ansic: 11,777; sh: 2,695; makefile: 291; perl: 16
file content (23 lines) | stat: -rwxr-xr-x 572 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#! /usr/bin/perl -w

$device = shift or die("Usage: reverse_dev <dev_path> <step>\n");
$step = shift or die("Usage: reverse_dev <dev_path> <step>\n");

open(IN, "/sbin/blockdev --getsize $device |") 
    or die("couldn't run blockdev\n");
$dev_size = <IN>;
close(IN);

chomp($dev_size);
$dev_size--;

# round down dev size to the lower step
$dev_size = int($dev_size / $step);
$dev_size *= $step;

$start = 0;
for ($i = 0; $i < $dev_size; $i += $step) {
    $rstart = $dev_size - ($start + $step);
    print "$start $step linear $device $rstart\n";
    $start += $step;
}