You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: vmdk/mkdisk.c
+13-4Lines changed: 13 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -109,10 +109,11 @@ printUsage(char *cmd, int compressionLevel, int numThreads)
109
109
{
110
110
printf("Usage:\n");
111
111
printf("%s -i [--detailed] src.vmdk: displays information for specified virtual disk\n", cmd);
112
-
printf("%s [-c compressionlevel] [-n threads] [-t toolsVersion] src.vmdk dst.vmdk: converts source disk to destination disk with given tools version\n\n", cmd);
112
+
printf("%s [-c compressionlevel] [-n threads] [-t toolsVersion] [--noreorder] src.vmdk dst.vmdk: converts source disk to destination disk with given tools version\n\n", cmd);
113
113
printf("-c <level> sets the compression level. Valid values are 1 (fastest) to 9 (best). Only when writing to VMDK. Current is %d.\n", compressionLevel);
114
114
printf("-n <threads> sets the number of threads used for compression level. Only when writing to VMDK. Current is (%d).\n", numThreads);
115
115
printf("--detailed shows detailed sparse extent header information (only with -i)\n");
116
+
printf("--noreorder disables grain reordering after compression (default: reordering enabled)\n");
116
117
117
118
return1;
118
119
}
@@ -149,13 +150,15 @@ main(int argc,
149
150
booldoInfo= false;
150
151
booldoDetailed= false;
151
152
booldoConvert= false;
153
+
booldoReorder= true; // Default to true for backward compatibility
152
154
intcompressionLevel=Z_BEST_COMPRESSION;
153
155
intnumThreads=get_nprocs();
154
156
constchar*env;
155
157
156
158
staticstructoptionlong_options[] = {
157
159
{"detailed", no_argument, 0, 'd'},
158
160
{"help", no_argument, 0, 'h'},
161
+
{"noreorder", no_argument, 0, 'r'},
159
162
{0, 0, 0, 0}
160
163
};
161
164
@@ -200,6 +203,9 @@ main(int argc,
200
203
}
201
204
numThreads=atoi(optarg);
202
205
break;
206
+
case'r':
207
+
doReorder= false;
208
+
break;
203
209
case't':
204
210
doConvert= true;
205
211
toolsVersion=optarg;
@@ -220,8 +226,8 @@ main(int argc,
220
226
exit(1);
221
227
}
222
228
223
-
if (compressionLevel <=0||compressionLevel>9) {
224
-
fprintf(stderr, "compression level must be > 0 and <= 9: %d\n", compressionLevel);
229
+
if (compressionLevel<0||compressionLevel>9) {
230
+
fprintf(stderr, "compression level must be >= 0 and <= 9: %d\n", compressionLevel);
225
231
exit(1);
226
232
}
227
233
@@ -288,6 +294,9 @@ main(int argc,
288
294
printf("\"rgdOffset\": %llu, ", (unsigned long long)sdi->diskHdr.rgdOffset);
289
295
printf("\"gdOffset\": %llu, ", (unsigned long long)sdi->diskHdr.gdOffset);
290
296
printf("\"overHead\": %llu", (unsigned long long)sdi->diskHdr.overHead);
0 commit comments