]> git.pld-linux.org Git - packages/parted.git/commitdiff
- Linux RAID/LVM support on Mac disklabels (from FC, with sector_size breaking remove...
authorJakub Bogusz <qboosh@pld-linux.org>
Sun, 24 Apr 2005 13:03:54 +0000 (13:03 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    parted-mac-lvm.patch -> 1.1

parted-mac-lvm.patch [new file with mode: 0644]

diff --git a/parted-mac-lvm.patch b/parted-mac-lvm.patch
new file mode 100644 (file)
index 0000000..eeda7c0
--- /dev/null
@@ -0,0 +1,100 @@
+--- parted-1.6.22.orig/libparted/disk_mac.c    2005-03-23 10:01:59.000000000 -0500
++++ parted-1.6.22/libparted/disk_mac.c 2005-03-21 16:08:28.000000000 -0500
+@@ -129,6 +129,7 @@
+       int             is_root;
+       int             is_swap;
+       int             is_lvm;
++      int             is_raid;
+       PedSector       data_region_length;
+       PedSector       boot_region_length;
+@@ -418,7 +419,15 @@
+ static int
+ _rawpart_is_lvm (MacRawPartition* raw_part)
+ {
+-      if (strcmp (raw_part->name, "lvm") != 0)
++      if (strcmp (raw_part->type, "Linux_LVM") != 0)
++              return 0;
++      return 1;
++}
++
++static int
++_rawpart_is_raid (MacRawPartition* raw_part)
++{
++      if (strcmp (raw_part->type, "Linux_RAID") != 0)
+               return 0;
+       return 1;
+ }
+@@ -502,6 +511,7 @@
+       mac_part_data->is_root = _rawpart_is_root (raw_part);
+       mac_part_data->is_swap = _rawpart_is_swap (raw_part);
+       mac_part_data->is_lvm = _rawpart_is_lvm (raw_part);
++      mac_part_data->is_raid = _rawpart_is_raid (raw_part);
+       /* "data" region */
+ #ifndef DISCOVER_ONLY
+@@ -1025,6 +1035,7 @@
+               mac_data->is_root = 0;
+               mac_data->is_swap = 0;
+               mac_data->is_lvm = 0;
++              mac_data->is_raid = 0;
+               strcpy (mac_data->volume_name, "untitled");
+       } else {
+@@ -1117,15 +1128,16 @@
+               if (part->fs_type)
+                       return mac_partition_set_system (part, part->fs_type);
+-                      
+-              strcpy (mac_data->system_name, "Apple_Bootstrap");
+-              mac_data->status = 0x33;
++
++              if (state)
++                      strcpy (mac_data->system_name, "Apple_Bootstrap");
++                      mac_data->status = 0x33;
+               return 1;
+       case PED_PARTITION_ROOT:
+               if (state) {
+                       strcpy (mac_data->volume_name, "root");
+-                      mac_data->is_swap = mac_data->is_lvm = 0;
++                      mac_data->is_swap = 0;
+               } else {
+                       if (mac_data->is_root)
+                               strcpy (mac_data->volume_name, "untitled");
+@@ -1136,7 +1148,7 @@
+       case PED_PARTITION_SWAP:
+               if (state) {
+                       strcpy (mac_data->volume_name, "swap");
+-                      mac_data->is_root = mac_data->is_lvm = 0;
++                      mac_data->is_root = 0;
+               } else {
+                       if (mac_data->is_swap)
+                               strcpy (mac_data->volume_name, "untitled");
+@@ -1145,14 +1157,19 @@
+               return 1;
+       case PED_PARTITION_LVM:
+-              if (state) {
+-                      strcpy (mac_data->volume_name, "lvm");
+-                      mac_data->is_root = mac_data->is_swap = 0;
+-              } else {
+-                      if (mac_data->is_lvm)
+-                              strcpy (mac_data->volume_name, "lvm");
+-              }
+               mac_data->is_lvm = state;
++              if (state)
++                      strcpy (mac_data->system_name, "Linux_LVM");
++              else
++                      mac_partition_set_system (part, part->fs_type);
++              return 1;
++
++      case PED_PARTITION_RAID:
++              mac_data->is_raid = state;
++              if (state)
++                      strcpy (mac_data->system_name, "Linux_RAID");
++              else
++                      mac_partition_set_system (part, part->fs_type);
+               return 1;
+       default:
This page took 0.05323 seconds and 4 git commands to generate.