]> git.pld-linux.org Git - packages/parted.git/blame - 0062-libparted-set-swap-flag-on-GPT-partitions.patch
- release 6 (by relup.sh)
[packages/parted.git] / 0062-libparted-set-swap-flag-on-GPT-partitions.patch
CommitLineData
c886eb9d
AM
1From f209b71efc693b97b7c812678e811698ffd2bc79 Mon Sep 17 00:00:00 2001
2From: Arvin Schnell <aschnell@suse.com>
3Date: Thu, 22 Dec 2016 14:36:43 -0800
4Subject: [PATCH 62/75] libparted: set swap flag on GPT partitions
5
6The filesystem type is still detected as befor, but now setting the
7'swap' flag will set the partition GUID to PARTITION_SWAP_GUID.
8
9Signed-off-by: Brian C. Lane <bcl@redhat.com>
10---
11 libparted/labels/gpt.c | 42 +++++++++++++++++++++++++++++++++++++++---
12 1 file changed, 39 insertions(+), 3 deletions(-)
13
14diff --git a/libparted/labels/gpt.c b/libparted/labels/gpt.c
15index 6027eb3..4f922b2 100644
16--- a/libparted/labels/gpt.c
17+++ b/libparted/labels/gpt.c
18@@ -290,6 +290,7 @@ typedef struct _GPTPartitionData
19 efi_char16_t name[37];
20 char *translated_name;
21 int lvm;
22+ int swap;
23 int raid;
24 int boot;
25 int bios_grub;
26@@ -818,7 +819,8 @@ _parse_part_entry (PedDisk *disk, GuidPartitionEntry_t *pte)
27 gpt_part_data->name[i] = 0;
28 gpt_part_data->translated_name = 0;
29
30- gpt_part_data->lvm = gpt_part_data->raid
31+ gpt_part_data->lvm = gpt_part_data->swap
32+ = gpt_part_data->raid
33 = gpt_part_data->boot = gpt_part_data->hp_service
34 = gpt_part_data->hidden = gpt_part_data->msftres
35 = gpt_part_data->msftdata
36@@ -841,6 +843,8 @@ _parse_part_entry (PedDisk *disk, GuidPartitionEntry_t *pte)
37 gpt_part_data->raid = 1;
38 else if (!guid_cmp (gpt_part_data->type, PARTITION_LVM_GUID))
39 gpt_part_data->lvm = 1;
40+ else if (!guid_cmp (gpt_part_data->type, PARTITION_SWAP_GUID))
41+ gpt_part_data->swap = 1;
42 else if (!guid_cmp (gpt_part_data->type, PARTITION_HPSERVICE_GUID))
43 gpt_part_data->hp_service = 1;
44 else if (!guid_cmp (gpt_part_data->type, PARTITION_MSFT_RESERVED_GUID))
45@@ -1361,6 +1365,7 @@ gpt_partition_new (const PedDisk *disk,
46
47 gpt_part_data->type = PARTITION_LINUX_DATA_GUID;
48 gpt_part_data->lvm = 0;
49+ gpt_part_data->swap = 0;
50 gpt_part_data->raid = 0;
51 gpt_part_data->boot = 0;
52 gpt_part_data->bios_grub = 0;
53@@ -1449,6 +1454,11 @@ gpt_partition_set_system (PedPartition *part,
54 gpt_part_data->type = PARTITION_LVM_GUID;
55 return 1;
56 }
57+ if (gpt_part_data->swap)
58+ {
59+ gpt_part_data->type = PARTITION_SWAP_GUID;
60+ return 1;
61+ }
62 if (gpt_part_data->raid)
63 {
64 gpt_part_data->type = PARTITION_RAID_GUID;
65@@ -1636,6 +1646,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
66 if (state)
67 gpt_part_data->raid
68 = gpt_part_data->lvm
69+ = gpt_part_data->swap
70 = gpt_part_data->bios_grub
71 = gpt_part_data->hp_service
72 = gpt_part_data->msftres
73@@ -1650,6 +1661,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
74 if (state)
75 gpt_part_data->raid
76 = gpt_part_data->lvm
77+ = gpt_part_data->swap
78 = gpt_part_data->boot
79 = gpt_part_data->hp_service
80 = gpt_part_data->msftres
81@@ -1664,6 +1676,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
82 if (state)
83 gpt_part_data->boot
84 = gpt_part_data->lvm
85+ = gpt_part_data->swap
86 = gpt_part_data->bios_grub
87 = gpt_part_data->hp_service
88 = gpt_part_data->msftres
89@@ -1677,6 +1690,22 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
90 gpt_part_data->lvm = state;
91 if (state)
92 gpt_part_data->boot
93+ = gpt_part_data->swap
94+ = gpt_part_data->raid
95+ = gpt_part_data->bios_grub
96+ = gpt_part_data->hp_service
97+ = gpt_part_data->msftres
98+ = gpt_part_data->msftdata
99+ = gpt_part_data->msftrecv
100+ = gpt_part_data->prep
101+ = gpt_part_data->irst
102+ = gpt_part_data->atvrecv = 0;
103+ return gpt_partition_set_system (part, part->fs_type);
104+ case PED_PARTITION_SWAP:
105+ gpt_part_data->swap = state;
106+ if (state)
107+ gpt_part_data->boot
108+ = gpt_part_data->lvm
109 = gpt_part_data->raid
110 = gpt_part_data->bios_grub
111 = gpt_part_data->hp_service
112@@ -1693,6 +1722,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
113 gpt_part_data->boot
114 = gpt_part_data->raid
115 = gpt_part_data->lvm
116+ = gpt_part_data->swap
117 = gpt_part_data->bios_grub
118 = gpt_part_data->msftres
119 = gpt_part_data->msftdata
120@@ -1707,6 +1737,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
121 gpt_part_data->boot
122 = gpt_part_data->raid
123 = gpt_part_data->lvm
124+ = gpt_part_data->swap
125 = gpt_part_data->bios_grub
126 = gpt_part_data->hp_service
127 = gpt_part_data->msftdata
128@@ -1721,6 +1752,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
129 gpt_part_data->boot
130 = gpt_part_data->raid
131 = gpt_part_data->lvm
132+ = gpt_part_data->swap
133 = gpt_part_data->bios_grub
134 = gpt_part_data->hp_service
135 = gpt_part_data->msftres
136@@ -1739,6 +1771,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
137 gpt_part_data->boot
138 = gpt_part_data->raid
139 = gpt_part_data->lvm
140+ = gpt_part_data->swap
141 = gpt_part_data->bios_grub
142 = gpt_part_data->hp_service
143 = gpt_part_data->msftdata
144@@ -1753,6 +1786,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
145 gpt_part_data->boot
146 = gpt_part_data->raid
147 = gpt_part_data->lvm
148+ = gpt_part_data->swap
149 = gpt_part_data->bios_grub
150 = gpt_part_data->hp_service
151 = gpt_part_data->msftres
152@@ -1766,6 +1800,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
153 gpt_part_data->boot
154 = gpt_part_data->raid
155 = gpt_part_data->lvm
156+ = gpt_part_data->swap
157 = gpt_part_data->bios_grub
158 = gpt_part_data->hp_service
159 = gpt_part_data->msftres
160@@ -1779,6 +1814,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
161 gpt_part_data->boot
162 = gpt_part_data->raid
163 = gpt_part_data->lvm
164+ = gpt_part_data->swap
165 = gpt_part_data->bios_grub
166 = gpt_part_data->hp_service
167 = gpt_part_data->msftres
168@@ -1793,7 +1829,6 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
169 case PED_PARTITION_LEGACY_BOOT:
170 gpt_part_data->legacy_boot = state;
171 return 1;
172- case PED_PARTITION_SWAP:
173 case PED_PARTITION_ROOT:
174 case PED_PARTITION_LBA:
175 default:
176@@ -1839,6 +1874,7 @@ gpt_partition_get_flag (const PedPartition *part, PedPartitionFlag flag)
177 case PED_PARTITION_IRST:
178 return gpt_part_data->irst;
179 case PED_PARTITION_SWAP:
180+ return gpt_part_data->swap;
181 case PED_PARTITION_LBA:
182 case PED_PARTITION_ROOT:
183 default:
184@@ -1855,6 +1891,7 @@ gpt_partition_is_flag_available (const PedPartition *part,
185 {
186 case PED_PARTITION_RAID:
187 case PED_PARTITION_LVM:
188+ case PED_PARTITION_SWAP:
189 case PED_PARTITION_BOOT:
190 case PED_PARTITION_BIOS_GRUB:
191 case PED_PARTITION_HPSERVICE:
192@@ -1868,7 +1905,6 @@ gpt_partition_is_flag_available (const PedPartition *part,
193 case PED_PARTITION_IRST:
194 case PED_PARTITION_ESP:
195 return 1;
196- case PED_PARTITION_SWAP:
197 case PED_PARTITION_ROOT:
198 case PED_PARTITION_LBA:
199 default:
200--
2012.9.3
202
This page took 0.057491 seconds and 4 git commands to generate.