OSDN Git Service

parted: exit nonzero for certain failures already diagnosed as "Error"
[android-x86/external-parted.git] / NEWS
1 GNU parted NEWS                                    -*- outline -*-
2
3 * Noteworthy changes in release ?.? (????-??-??) [?]
4
5 ** New features
6
7   parted has improved support for partitionable loopback devices
8
9 ** Bug fixes
10
11   parted now exits nonzero for certain failures already diagnosed as "Error".
12   For example, before this change, parted would exit successfully in spite
13   of "Error: ...unrecognised disk label" and "Error:... both GPT primary
14   and backup partition tables are corrupted".
15
16   libparted: gpt_disk_duplicate now copies the flags over to the new
17   disk object. Previously the flags would be undefined.
18
19   libparted: no longer aborts (failed assertion) due to a nilfs2_probe bug
20   [bug introduced in parted-2.4 with the addition of nilfs2 support]
21
22   libparted: no longer aborts when reading a truncated GPT-formatted device
23   [bug present at least as far back as RHEL4's parted-1.6.19]
24
25   libparted: works with a two-component linux kernel version number like 3.0
26   [bug present since the beginning]
27
28   libparted: strengthen the pc98 test so that it is much less likely to
29   cause an MSDOS partition table to be mistakenly identified as pc98.
30   [bug present since the beginning]
31
32 ** Changes in behavior
33
34   parted: mkpart command has changed semantics with regard to specifying end
35   of the partition. If the end is specified using MiB, GiB, etc. unit, parted
36   subtracts one sector from the specified value. With this change, it is now
37   possible to create partitions like 1MiB-2MiB, 2MiB-3MiB and so on.
38
39 * Noteworthy changes in release 3.0 (2011-05-30) [stable]
40
41 ** Bug fixes
42
43   Fix numerous small leaks in both the library and the UI.
44
45 ** Changes in behavior
46
47   Remove all FS-related (file system-related) sub-commands; these commands
48   are no longer recognized because they were all dependent on parted "knowing"
49   too much about file system: mkpartfs, mkfs, cp, move, check, resize.
50   This change removes not just the user interface bits, but also the
51   library functions and nearly all of the underlying FS-munging code.
52   The code embedded in Parted by which it knew about those file systems
53   was so old, unmaintainable and buggy that while seemingly drastic,
54   this change is like removing a gangrenous toe.
55
56   Here is the list of removed functions:
57
58     ped_file_system_clobber
59     ped_file_system_open
60     ped_file_system_create
61     ped_file_system_close
62     ped_file_system_check
63     ped_file_system_copy
64     ped_file_system_resize
65     ped_file_system_get_create_constraint
66     ped_file_system_get_resize_constraint
67     ped_file_system_get_copy_constraint
68
69   This change also removes the corresponding function members
70   from "struct _PedFileSystemOps":
71
72     clobber open create close check copy resize get_create_constraint
73     get_resize_constraint get_copy_constraint
74
75
76 * Noteworthy changes in release 2.4 (2011-05-18) [stable]
77
78 ** Bug fixes
79
80   parted no longer allows the modification of certain in-use partitions.
81   In particular, before this fix, parted would permit removal or modification
82   of any in-use partition on a dmraid and any in-use partition beyond the 15th
83   on a regular scsi disk.
84
85   Improve support of DASD devices on the s390 architecture.
86   Parted now supports all DASD types (CKD and FBA), DASD formats (CDL,
87   LDL, CMS non-reserved, and CMS reserved), and DASD drivers (ECKD, FBA,
88   and DIAG) in all combinations supported by the Linux kernel.  As before,
89   only CDL format on CKD DASD using the ECKD driver is supported for
90   read-write operations (create, delete, move, re-size, etc.).  However,
91   the implicit partition present on LDL- and CMS-formatted disks is now
92   correctly recognized for read-only operations.  In detail:
93
94   - parted now correctly handles LDL-format disks with a block
95     size other than 4096 (bug fix)
96
97   - parted now recognizes the CMS disk format, both reserved
98     and non-reserved (enhancement)
99
100   - parted now supports FBA DASD devices (enhancement)
101
102   - parted now supports the DIAG driver when running in a
103     virtual machine under z/VM (enhancement)
104
105   libparted: raise the limit on the maximum start sector and the
106   maximum number of sectors in a "loop" partition table from 2^32 to 2^64.
107   [bug introduced in parted-2.1]
108
109   libparted once again recognizes a whole-disk FAT partition
110   [bug introduced in parted-1.9.0]
111
112   libparted now recognizes scsi disks with a high major (128-135) as scsi
113   disks
114
115   an msdos partition table on a very small device (smaller than one cylinder)
116   is now recognized.  [bug introduced in parted-2.2]
117
118   libparted: zero-length devices (other than files) are ignored rather than
119   throwing an exception.
120
121   libparted: gpt label creation can no longer divide by zero with a
122   defective device or when a concurrent writer modifies the PE-size
123   bytes in the small interval between the write and subsequent read
124   of the primary GPT header.
125
126 ** Changes in behavior
127
128   "parted $dev print" now prints information about the device (model, size,
129   transport, sector size) even when it fails to recognize the disk label.
130
131   specifying partition start or end values using MiB, GiB, etc. suffixes
132   now makes parted do what I want, i.e., use that precise value, and not
133   some other that is up to 500KiB or 500MiB away from what I specified.
134   Before, to get that behavior, you would have had to use carefully chosen
135   values with units of bytes ("B") or sectors ("s") to obtain the same
136   result, and with sectors, your usage would not be portable between devices
137   with varying sector sizes.  This change does not affect how parted handles
138   suffixes like KB, MB, GB, etc.
139
140
141 * Noteworthy changes in release 2.3 (2010-05-28) [stable]
142
143 ** New features
144
145   parted now recognizes ATA over Ethernet (AoE) devices
146
147   parted now recognizes Linux Software RAID Arrays
148
149   libparted has a new partition flag to check for diagnostic (aka recovery
150   or reserved) partitions: PED_PARTITION_DIAG
151
152 ** Bug fixes
153
154   When libparted deferenced a /dev/mapper/foo symlink, it would keep the
155   resulting /dev/dm-N name and sometimes use it later, even though it
156   had since become stale and invalid.  It no longer stores the result
157   of dereferencing a /dev/mapper symlink.
158
159   libparted's msdos_partition_is_flag_available function now always reports
160   that the "hidden" flag is not available for an extended partition.
161   Similarly, msdos_partition_get_flag(p,PED_PARTITION_HIDDEN) always returns 0
162   for an extended partition.
163
164   libparted uses a more accurate heuristic to distinguish between
165   ext4 and ext3 partitions.
166
167   libparted now properly checks the return value of dm_task_run when
168   operating on devicemapper devices.
169
170   allow using ped_device_cache_remove(dev) followed by a (later)
171   ped_device_destroy() without corrupting the device cache.
172
173   when creating an ext2 file system[*], Parted no longer creates an
174   invalid one when its size is 2TiB or larger.
175   [*] Remember, now all FS-creation operations are deprecated in Parted.
176   This is not an indicator that we'll be supporting this code.
177   On the contrary, it is slated to be removed.
178
179 ** Changes in behavior
180
181   libparted no longer issues an exception/warning about >512-byte
182   sector support being "HIGHLY EXPERIMENTAL".  It seems to have matured
183   enough to be usable at least with GPT and MSDOS partition tables.
184
185
186 * Noteworthy changes in release 2.2 (2010-02-26) [stable]
187
188 ** Changes in behavior
189
190   The default alignment (--align option) for newly created partitions has
191   been changed to optimal.
192
193 ** New features
194
195   The ped_device_get_*_alignment() functions now return a sane default
196   value instead of NULL when the so called topology information is incomplete.
197   The default minimum alignment aligns to physical sector size, the default
198   optimal alignment is 1MiB, which is what vista and windows 7 do.
199
200 ** Bug fixes
201
202   Parted no longer uses a physical sector size of 0 or of any other
203   value smaller than the logical sector size.
204
205   dos: creating an HFS or HFS+ partition in an msdos partition table
206   used to set the partition type to 0x83.  That is wrong.  The required
207   number is 0xaf, and that is what is used now.
208
209   gpt: read-only operation could clobber MBR part of hybrid GPT+MBR table
210   [bug introduced in parted-2.1]
211
212   gpt: a read-only operation like "parted $dev print" would overwrite $dev's
213   protective MBR when exactly one of the primary and backup GPT tables was
214   found to be corrupt.
215   [bug introduced prior to parted-1.8.0]
216
217   sun: the version, sanity and nparts VTOC fields were ignored by libparted.
218   Those fields are properly initialized now. The nparts (number of partitions)
219   field is initialized to 8 (max. number of sun partitions) rather that to a
220   real number of partitions. This solution is compatible with Linux kernel
221   and Linux fdisk.
222
223   "make install" no longer installs tests programs named disk and label
224
225   libparted: try harder to inform kernel of partition changes.
226   Previously when editing partitions, occasionally the kernel would
227   fail to be informed of partition changes.  When this happened future
228   problems would occur because the kernel had incorrect information.
229   For example, if this problem arose when resizing or creating a
230   new partition, then an incorrect partition size might be displayed
231   or a user might encounter a failure to format or delete a newly
232   created partition, respectively.
233
234   libparted: committing a disk that was returned by ped_disk_duplicate
235   would always result in ped_disk_clobber being called (and thus the first
236   and last 9KiB of the disk being zeroed), even if the duplicated disk,
237   was not returned by ped_disk_fresh().
238
239
240 * Noteworthy changes in release 2.1 (2009-12-20) [stable]
241
242 ** New features
243
244   new --align=<align> commandline option which can have the following values:
245   none:     Use the minimum alignment allowed by the disk type
246   cylinder: Align partitions to cylinders (the default)
247   minimal:  Use minimum alignment as given by the disk topology information
248   optimal:  Use optimum alignment as given by the disk topology information
249   The minimal and optimal  values will use layout information provided by the
250   disk to align the logical partition table addresses to actual physical
251   blocks on the disks. The mininal value uses the minimum aligment needed to
252   align the partition properly to physical blocks, which avoids performance
253   degradation. Where as the optimal value uses a multiple of the physical
254   block size in a way that guarantees optimal performance.
255   The min and opt values will only work when compiled with
256   libblkid >= 2.17 and running on a kernel >= 2.6.31, otherwise they will
257   behave as the none --align value.
258
259   libparted: new functions to set per disk (instead of per partition) flags:
260   ped_disk_set_flag()
261   ped_disk_get_flag()
262   ped_disk_is_flag_available()
263   ped_disk_flag_get_name()
264   ped_disk_flag_get_by_name()
265   ped_disk_flag_next()
266
267   libparted: new per disk flag: PED_DISK_CYLINDER_ALIGNMENT. This flag
268   (which defaults to true) controls if disk types for which cylinder alignment
269   is optional do cylinder alignment when a new partition gets added.
270
271   libparted: new functions to return per-partition-table-type limits:
272     - ped_disk_max_partition_start_sector: Return the largest representable
273     start sector number for a given "disk".
274     - ped_disk_max_partition_length: Return the maximum partition length
275     for a given "disk".
276
277   new command "align-check TYPE N" to determine whether the starting sector
278   of partition N is TYPE(minimal|optimal)-aligned for the disk.  E.g.,
279       parted -s /dev/sda align-check min 1 && echo partition 1 is min-aligned
280       parted -s /dev/sda align-check opt 2 && echo partition 2 is opt-aligned
281   The same libblkid and kernel version requirements apply as for --align
282
283   Add functions to libparted to get minimal and optimal alignment
284   information from devices:
285   ped_device_get_minimal_aligned_constraint()
286   ped_device_get_optimal_aligned_constraint()
287   ped_device_get_minimum_alignment()
288   ped_device_get_optimum_alignment()
289   The same libblkid and kernel version requirements apply as for --align
290
291   Add ped_disk_get_partition_alignment() function to libparted to get
292   information about alignment enforced by the disk type.
293
294 ** Bug fixes
295
296   parted can once again create partition tables on loop devices.
297   Before, "parted -s /dev/loop0 mklabel gpt" would fail.
298   [bug introduced in parted-1.9.0]
299
300   improved >512-byte sector support: for example, printing a table on a
301   4k-sector disk would show "Sector size (logical/physical): 4096B/512B",
302   when the sizes should have been "4096B/4096B".
303
304   gpt tables are more rigorously checked; before, partition entry array CRCs
305   were not checked, and we would mistakenly use the AlternateLBA member of a
306   known-corrupt primary table.
307
308   improved dasd disk support, in previous versions calling
309   ped_disk_new_fresh() or ped_disk_duplicate() on a dasd type PedDisk
310   would fail.  This is fixed now.
311
312   handle device nodes created by lvm build with udev synchronisation enabled
313   properly.
314
315   when printing tables, parted no longer truncates flag names
316
317
318 * Noteworthy changes in release 2.0 (2009-10-06) [beta]
319
320 ** Improvements
321
322   Parted now supports disks with sector size larger than 512 bytes.
323   Before this release, Parted could operate only on disks with a sector
324   size of 512 bytes.  However, disk manufacturers are already making disks
325   with an exposed hardware sector size of 4096 bytes.  Prior versions of
326   Parted cannot even read a partition table on such a device, not to
327   mention create or manipulate existing partition tables.
328   Due to internal design and time constraints, the following
329   less-common partition table types are currently disabled:
330     amiga, bsd, aix, pc98
331   "bsd" and "amiga" are mostly done, but had a few minor problems,
332   so may remain disabled until someone requests that they be revived.
333
334 ** Bug fixes
335
336   big-endian systems can once again read GPT partition tables
337   [bug introduced in parted-1.9.0]
338
339   ped_partition_is_busy no longer calls libparted's exception handler,
340   since doing so caused trouble with anaconda/pyparted when operating on
341   dmraid devices.
342
343   Partitions in a GPT table are no longer assigned the "microsoft
344   reserved partition" type.  Before this change, each partition would
345   be listed with a type of "msftres" by default.
346
347
348 * Noteworthy changes in release 1.9.0 (2009-07-23) [stable]
349
350 ** Bug fixes
351
352   parted now preserves the protective MBR (PMBR) in GPT type labels.
353   http://lists.alioth.debian.org/pipermail/parted-devel/2008-December/\
354     002473.html
355   http://lists.gnu.org/archive/html/bug-parted/2008-12/msg00015.html
356
357   gpt_read now uses SizeOfPartitionEntry instead of the size of
358   GuidPartitionEntry_t.  This ensures that *all* of the partition
359   entries are correctly read.
360   http://lists.alioth.debian.org/pipermail/parted-devel/2008-December/\
361     002465.html
362   http://lists.alioth.debian.org/pipermail/parted-devel/attachments/\
363     20081202/b7c0528d/attachment.txt
364
365   mklabel (interactive mode) now correctly asks for confirmation, when
366   replacing an existent label, without outputting an error message.
367   http://lists.alioth.debian.org/pipermail/parted-devel/2009-January/\
368     002739.html
369
370   resize now handles FAT16 file systems with a 64k cluster.  This
371   configuration is not common, but it is possible.
372   http://parted.alioth.debian.org/cgi-bin/trac.cgi/ticket/207
373
374   parted now ignores devices of the type /dev/md* when probing.  These
375   types of devices should be handled by the device-mapper capabilities
376   of parted.
377   http://lists.alioth.debian.org/pipermail/parted-devel/2009-April/\
378     002781.html
379
380   The parted documentation now describes the differences in the options
381   passed to mkpart for the label types.
382   http://lists.alioth.debian.org/pipermail/parted-devel/2009-April/\
383     002782.html
384
385 ** Changes in behavior
386
387   include/parted/beos.h, include/parted/gnu.h and include/parted/linux.h
388   have been removed.  The symbols contained in these files (GNUSpecific,
389   ped_device_new_from_store, BEOSSpecific, LinuxSpecific,  LINUX_SPECIFIC)
390   were moved to the individual files that need them.
391
392   In libparted, the linux-swap "filesystem" types are now called
393   "linux-swap(v0)" and "linux-swap(v1)" rather than "linux-swap(old)"
394   and "linux-swap(new)" as in parted 1.8, or "linux-swap" as in older
395   versions; "old" and "new" generally make poor names, and v1 is the
396   only format supported by current Linux kernels. Aliases for all
397   previous names are available.
398
399 * Noteworthy changes in release 1.8.8.1 (2007-12-17) [stable]
400
401 ** FIXME: fill in details
402
403 * Noteworthy changes in release 1.8.8 (2007-08-09) [stable]
404
405 ** GNU parted is now licensed under the GNU General Public License version 3
406    or higher.  See the COPYING file for more details.
407
408 ** libparted:
409   - Add compute_block_counts() to improve ext2fs support.
410   - Properly detect 'ext2 fs too small' cases.
411   - Move formatting commands out of translatable strings.
412   - Read an msdos partition table from a device with 2K sectors.
413   - Remove always-false "Unable to open" diagnostic in ped_disk_new(),
414     leave the "unrecognized disk label" diagnostic.
415   - Don't leak partition table buffer in amiga_read().
416   - Don't read/write initialized memory with DEBUG turned on off for
417     'mklabel bsd' and 'mklabel amiga' command calls.
418   - Turn off DEBUG in libparted.c to avoid initializing all allocated
419     memory to '1' bits.
420   - Correct handling of HeaderSize field in GPT labels.
421   - Fix block number used when checking for ext2 fs state.
422   - Add detection support for Xen virtual block devices (/dev/xvd*).
423   - When reading DASD labels, check the filesystem type as well as
424     partition flags to determine what's on the partition.
425   - Add _dm_probe_all() from Debian to probe for all device-mapper
426     devices.
427
428 ** parted:
429   - Fixed exception handling in mkpart and mkpartfs commands.
430   - Add the --dry-run option to the partprobe command.
431   - Update docs: cannot specify 'primary' for a partition on a loop
432     device.
433   - Remove unused functions (get_spaces).
434   - Fix off-by-one error in str_list_print_wrap().
435   - Use xmalloc() and xrealloc() to check return values.
436   - Fix invalid command line argument handling.
437   - Close memory leaks in parted.c and table.c.
438   - Fix warnings when compiling with translation support enabled.
439   - Use a consistent prompt when asking for a file system type.
440   - Update docs: don't reference old versions of gzip.
441
442 ** misc:
443   - Improve the testing framework in the tests/ subdirectory.  Build out
444     more of the testing scripts so we can start using that to ensure we
445     don't introduce regressions in releases.
446   - Support testing with tmpfs filesystems on Linux.
447   - Work around inadequate libreadline in the configure script.
448   - Don't include config.h from internal headers.
449
450 * Noteworthy changes in release 1.8.7 (2007-05-09) [stable]
451
452 ** libparted:
453   - Prevent compilation of DASD code on GNU Hurd systems.
454   - Integrate new unit testing framework for parted and libparted.
455   - Fix primary partition cylinder alignment error for DOS disk labels.
456   - Use PED_PARTITION_NORMAL in place of PED_PARTITION_PRIMARY.
457   - Avoid segfault due to a double free on reiserfs support.
458
459 ** parted:
460   - Fix script mode (-s) for mkfs command in parted.
461   - Suppress "you are not superuser..." warning in script mode.
462   - Fix off-by-one bug in parted when displaying information about the
463     disk.
464   - Do not translate partition names in the 'parted print' command.
465     This causes problems for non-Latin-based character sets.
466   - Send errors to stderr rather than stdout.
467   - Handle command line options independent of the order.
468   - Abort on any invalid option and handle -v and -h first.
469   - Only display the update /etc/fstab message when there has been a
470     change to the disk (a shorter and more direct message too).
471
472 * Noteworthy changes in release 1.8.6 (2007-03-20) [stable]
473
474 ** Revert the implementation of the linux-swap(new) and linux-swap(old) types.
475    The type is 'linux-swap' for v1, v2, and s1suspend swap partitions on Linux.
476
477 * Noteworthy changes in release 1.8.5 (2007-03-20) [stable]
478
479 ** Another minor update.  Both versions 1.8.3 and 1.8.4 lacked po translation
480    files.  These are included with version 1.8.5.
481
482 * Noteworthy changes in release 1.8.4 (2007-03-19) [stable]
483
484 ** Minor bug fix release for 1.8.3 to fix build issues on various
485    platforms:
486   - Use 'uname -m' to determine if we build on System Z or not.
487   - Include <parted/vtoc.h> in <parted/fdasd.h> for format1_label_t
488     definition.
489   - Remove unused variables in libparted/arch/linux.c (-Werror).
490   - Check return values on fgets() and asprint() in libparted/arch/linux.c
491     (-Werror).
492   - Check for tgetent() in libtinfo in the configure script.
493   - Move some macro definitions in <parted/disk.h> to fix a compile
494     problem with gcc-4.1.2 as indicated here:
495     http://lists.gnu.org/archive/html/bug-parted/2007-03/msg00008.html
496
497 * Noteworthy changes in release 1.8.3 (2007-03-16) [stable]
498
499 ** libparted:
500   - Header file clean ups.
501   - Sync the linux-swap header according to the Linux kernel sources.
502   - Enable support for swsusp partitions and the ability to differentiate
503     between old and new versions of linux-swap partitions.
504   - Renaming PARTITION_EXT to PARTITION_DOS_EXT in the DOS disklabel
505     code (consitency with Linux kernel source).
506   - Added libparted.pc pkg-config file.
507   - Remove unused functions, ifdefs, and other code.
508   - Deprecate ped_[register|unregister]_disk_type in favor of
509     ped_disk_type_[register|unregister].
510   - Small test program fixes (in label.c and common.c).
511   - Make functions const-correct.
512   - Handle systems where libreadline is not available.
513   - Preserve starting sector for primary NTFS 3.1 partitions on DOS
514     disklabel.
515   - Handle 2048-byte logical sectors in linux_read().
516   - Use PED_SECTOR_SIZE_DEFAULT macro in place of 512.
517   - Don't assume logical sector size is <= 512B on AIX.
518   - Detect HFS write failure.
519   - Use mkstemp() in place of mktemp().
520   - Added HFS+ resize support.
521   - Don't build DASD support on non-zSeries hardware.
522
523 ** parted/partprobe:
524   - Use fputs() and putchar() in place for printf(), when possible.
525   - Detect/report stdout write errors.
526   - Accept the --version and --help options.
527   - Fix memory leaks in parted(8).
528
529 ** general:
530   - Synchronize the manual page and --help documentation.
531   - GNU autoconf and automake updates.
532   - 'gcc -Wall -Wshadow' warning cleanups.
533   - Don't define _GNU_SOURCE manually.
534   - Documentation updates and cleanups (AUTHORS, copyright notices,
535     etc).
536   - Use gnulib (http://www.gnu.org/software/gnulib/).
537
538 * Noteworthy changes in release 1.8.2 (2007-01-12) [stable]
539
540 ** libparted:
541   - Add the ped_device_cache_remove() function to remove a device from
542     the cache.  This is necessary for some things that use libparted,
543     including pyparted.
544   - Fix a segfault in ped_assert() where the wrong pointer is freed in
545     the backtrace handler.
546   - Only call _disk_warn_loss(disk) in do_mklabel() if disk is not NULL.
547     Fixes a segfault when initializing new volumes.
548   - Dynamically allocate space for exception messages.
549   - Output a backtrace when catching SEGV_MAPPER or a general SIGSEGV.
550
551 ** parted:
552   - Destroy all objects before return when called with --list or --all
553     option.
554   - Zero sized device is shown as 0.00B and not -0.00kB.
555   - Implement 'print devices' command.
556   - Alias 'print list' to 'print all'.
557   - Alias 'mktable' to 'mklabel'.
558
559 ** misc:
560   - Other bug fixes, documentation updates, and translation improvements.
561   - Code and API clean-ups.
562
563 * Noteworthy changes in release 1.8.1 (2006-12-04) [stable]
564
565 ** libparted:
566   - Rework backtrace support.
567   - Code cleanups.
568   - Added --enable-selinux configure option to enable linking libparted with
569     libselinux and libsepol.
570   - Disable ext2fs resize for now, tell user to use resize2fs.
571
572 ** parted:
573   - Fix loop in print_all().
574   - Introduce the -list command-line switch.
575   - Make mktable aliased to mklabel.
576   - Warn before mklabel and mkfs.
577   - Code cleanups in _partition_warn_busy(), _disk_warn_busy(),
578     _partition_warn_loss(), and _disk_warn_loss().
579   - Avoid warning about user permissions when using --version.
580   - Fix 'print' command help.
581   - Proper print when there are no extended partitions, but partition names.
582
583 ** misc:
584   - Generate SHA-1 digest of the archive files and upload those along with the
585     actual archive files.
586   - Update translation files.
587   - Remove automatically generated files from version control.
588
589 * Noteworthy changes in release 1.8.0 (2006-11-17) [stable]
590
591 ** libparted:
592   - GPT fixes:
593        - Correctly handle disks with non-512 byte sector sizes
594        - Support LUN resizing (see new space, allow parted to use it)
595        - Prevent overlap of LastUsableLBA and PartitionEntryLBA in backup GPT
596   - Prevent SIGFPE when FAT sector size is 0
597   - Add ped_exception_get_handler()
598   - DASD support for IBM zSeries systems
599   - AIX disk label support
600   - Detect Promise SX8 storage devices
601   - Macintosh (ppc and x86) disk label improvements:
602        - Prevent LVM and RAID partition types from corrupting the table
603        - Fix removal of driver partition
604   - Add support binary units (MiB, KiB, GiB)
605   - In ped_register_disk_type(), handle disk_types==NULL case
606   - In ped_unregister_disk_type(), handle case where type is not registered
607   - Fix geometry read problems on 64-bit Macs (and probably other 64-bit systems)
608   - Add support for /dev/mapper devices via libdevmapper library
609   - Detect Apple_Boot partition types correctly on MacOS X 10.4 systems
610
611 ** parted:
612   - Various bug fixes, signal handling fixes, and spelling error fixes
613   - UI improvements to display more information about the disk and transport
614     layer
615
616 ========================================================================
617
618 Copyright (C) 2001-2011 Free Software Foundation, Inc.
619
620 Permission is granted to copy, distribute and/or modify this document
621 under the terms of the GNU Free Documentation License, Version 1.3 or
622 any later version published by the Free Software Foundation; with no
623 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
624 Texts.  A copy of the license is included in the ``GNU Free
625 Documentation License'' file as part of this distribution.