Difference between revisions of "Download/ploop/1.5/changes"
(+version) |
(fix info about old snapshots) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Compatibility notes == | == Compatibility notes == | ||
* this version requires running vzkernel >= 2.6.32-042stab061.1 | * this version requires running vzkernel >= 2.6.32-042stab061.1 | ||
− | * | + | * DiskDescriptor.xml created by older ploop versions are converted to current format |
* there were a few incompatible library API changes, see below | * there were a few incompatible library API changes, see below | ||
Line 28: | Line 28: | ||
* ploop copy: do not leak opened fds | * ploop copy: do not leak opened fds | ||
* ploop create: fix gpt partition creation to be 4096 aligned | * ploop create: fix gpt partition creation to be 4096 aligned | ||
+ | * ploop create, resize: round up size to be cluster aligned | ||
* tools: few exit code fixes | * tools: few exit code fixes | ||
* multiple usage, log and error message fixes | * multiple usage, log and error message fixes | ||
Line 34: | Line 35: | ||
* ploop mount: check that mount point is a directory | * ploop mount: check that mount point is a directory | ||
* ploop umount: reduce retry count from 60 to 6 | * ploop umount: reduce retry count from 60 to 6 | ||
+ | * ploop umount: print lsof output in case of failed umount | ||
* ploop create: for prealloc image, use ftruncate if fallocate not supported | * ploop create: for prealloc image, use ftruncate if fallocate not supported | ||
* ploop create, resize: add check for correct block device size | * ploop create, resize: add check for correct block device size | ||
Line 40: | Line 42: | ||
'''Library API changes''' | '''Library API changes''' | ||
− | * | + | * add ploop_resolve_functions() to aid in dynamic library loading |
* introduce optimized ploop_get_info_by_descr(), remove ploop_get_info() | * introduce optimized ploop_get_info_by_descr(), remove ploop_get_info() | ||
* replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr() | * replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr() | ||
* remove ploop_getdevice() | * remove ploop_getdevice() | ||
+ | |||
+ | {{git log|ploop|ploop-1.5|}} |
Latest revision as of 15:18, 25 September 2012
Compatibility notes[edit]
- this version requires running vzkernel >= 2.6.32-042stab061.1
- DiskDescriptor.xml created by older ploop versions are converted to current format
- there were a few incompatible library API changes, see below
Changes[edit]
Since version 1.4
New functionality
- switch from old /dev/ploop/ symlink-based to new in-kernel cookie registration
- snapshots: switch to schema with constant top delta uuid
- use /proc/vz/ploop_minor based interface to get free minor
- if ploop device is in maintenance state, try to complete it before doing snapshot/resize/merge/mount/umount/copy operation
- ploop mount: use in-kernel I/O module autodetection
- ploop balloon discard: new iterative compacting support
- ploop balloon discard: implement --stat
- ploop balloon discard: implement --automount
- ploop balloon discard: cancellation support
- ploop balloon: allow DiskDescriptor.xml argument
- ploop umount: implement -c component_name
- ploop list: implement
- /sbin/mount.ploop: do load ploop modules
Bug fixes
- do not crash on empty DiskDescriptor.xml (libxml2 workaround)
- ploop convert: fix converting from expanded to raw
- ploop copy: fixed check for opened fd
- ploop copy: do not leak opened fds
- ploop create: fix gpt partition creation to be 4096 aligned
- ploop create, resize: round up size to be cluster aligned
- tools: few exit code fixes
- multiple usage, log and error message fixes
Improvements
- ploop mount: check that mount point is a directory
- ploop umount: reduce retry count from 60 to 6
- ploop umount: print lsof output in case of failed umount
- ploop create: for prealloc image, use ftruncate if fallocate not supported
- ploop create, resize: add check for correct block device size
- scripts: de-bash-ify
- assorted code refactoring, cleanups and nitpicks
Library API changes
- add ploop_resolve_functions() to aid in dynamic library loading
- introduce optimized ploop_get_info_by_descr(), remove ploop_get_info()
- replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr()
- remove ploop_getdevice()
For the complete list of changes in this release, see git changelog for ploop-1.5.