Util-linux-ng 2.18 Release Notes
================================

The util-linux-ng package does not contain rdev(8), ramsize(8), 
vidmode(8) and rootflags(8) anymore. 

The fdisk(8) command does not use DOS-compatible mode and cylinders as display
units by default. The old deprecated DOS behavior could be enabled by 'c' and
'u' fdisk commands or from command line by '-c=dos -u=cylinders' options.

Release highlights
------------------

libmount:
  - this NEW LIBRARY is designed to be used in low-level utils like
    mount(8) and /sbin/mount.<type> helpers as well as in some other
    projects.

  - the library API is still officially unstable. The library provides
    fstab, mtab and mountinfo parser, routines for work with parsed 
    data and mount options, mtab locking, etc. The high-level API for 
    mount(2) is planned for the next major release. For more details see:
    http://thread.gmane.org/gmane.linux.utilities.util-linux/3239

  - the utils like mount(8) or umount(8) are not linked with the library
    yet. This change is planned for util-linux-ng-2.19.

findmnt(8):
  - this NEW COMMAND is a command line interface to the libmount library 
    for work with mountinfo, fstab and mtab files

fsfreeze(8):
   - this NEW COMMAND is very simple wrapper around FIFREEZE/FITHAW ioctls

swaplabel(8):
   - this NEW COMMAND allows to change swaparea UUID and label

blkid(8):
  - supports new command line option "-i" to print I/O Limits

  - supports new command line option "-n" to restrict probing functions to 
    defined list of superblock types (names).

  - returns details from partition table (type, flags, uuid, ...)

chrt(1):
  - supports new command line option "-R/--reset-on-fork" to enable 
    SCHED_RESET_ON_FORK flag

fdisk(8):
  - supports new command line option "-c" to switch off DOS mode
  - uses 1MiB offset for the first partition
    (all these changes are already in the release 2.17.2)

hwclock(8):
  - supports new command line option "--predict" to predict what the RTC will 
    read at time given by the --date option based on the adjtime file.

ldattach(8):
  - supports new command line option "-i/--iflag" to sets the specified bits 
    in the c_iflag word of the serial line.

fallocate(1), losetup(8) and mount(8):
  - the options --offset, --length or --sizelimit support suffixes
    (MiB, GiB, ...) and hex numbers

umount(8):
  - supports new command line option "--fake" to avoid umount(2) syscall


Stable maintenance releases between v2.17 and v2.18
---------------------------------------------------

util-linux-ng 2.17.1 [22-Feb-2010]

 * https://www.kernel.org/pub/linux/utils/util-linux/v2.17/v2.17.1-ReleaseNotes
   https://www.kernel.org/pub/linux/utils/util-linux/v2.17/v2.17.1-ChangeLog

util-linux-ng 2.17.2 [22-Mar-2010]

 * https://www.kernel.org/pub/linux/utils/util-linux/v2.17/v2.17.2-ReleaseNotes
   https://www.kernel.org/pub/linux/utils/util-linux/v2.17/v2.17.2-ChangeLog


Changes between v2.17 and v2.18
-------------------------------

 For more details see ChangeLog files at:
 https://www.kernel.org/pub/linux/utils/util-linux/v2.18/

addpart:
   - use atoll() for parsing command line arguments  [Thomas Fehr]
blkid:
   - add \n to the "-o udev" output when probe more devices  [Karel Zak]
   - add 'export' output format  [Karel Zak]
   - add -i option to print I/O limits  [Karel Zak]
   - add -n <list> option  [Karel Zak]
   - add newline when only one value is printed  [Karel Zak]
   - cleanup -u <list> parsing  [Karel Zak]
   - cleanup man page  [Karel Zak]
   - encode PART_ENTRY_TYPE  [Karel Zak]
   - export ID_PART_ENTRY_* variables for udev  [Karel Zak]
   - fix #ifdef HAVE_TERMIO[S]_H  [Karel Zak]
   - fix blkid_probe_lookup_value() usage  [Karel Zak]
   - improve RAIDs and tiny devices probing  [Karel Zak]
   - probe for PT, don't probe for FS on small whole-disks  [Karel Zak]
   - remove _ENC from ID_PART_ENTRY_{NAME,TYPE} variables  [Karel Zak]
   - remove duplicate option from man page  [Karel Zak]
   - report open() errors in low-level probing  [Karel Zak]
   - support suffixes for -O <offset> and -S <size>  [Karel Zak]
   - update man page/usage()  [Karel Zak]
blockdev:
   - reduce usage text width  [Francesco Cosoleto]
build-sys:
   - add missing tests for libuuid and libblkid  [Karel Zak]
   - cleanup lib{mount,blkid} building  [Karel Zak]
   - improved check for fallocate()  [Yann Droneaud]
   - minor changes for GNU/Hurd  [Samuel Thibault]
   - release++ (v2.18-rc1)  [Karel Zak]
   - release++ (v2.18-rc2)  [Karel Zak]
   - remove duplicate #includes  [Karel Zak]
   - replace ../ with $top_srcdir  [Karel Zak]
   - update include/Makefile.am  [Karel Zak]
   - use include/list.h  [Karel Zak]
cal:
   - factor out and update multibyte alignment code  [Pádraig Brady]
   - fix first day of the week calculation on BE systems  [Karel Zak]
   - remove unnecessary info from man page  [Karel Zak]
cfdisk:
   - fix warning  implicit declaration of function ‘wcwidth’  [Karel Zak]
   - set '[New]' as default item on menu for non allocated space instead of '[Help]'.  [Francesco Cosoleto]
   - set '[Quit]' as default menu item on first run instead of '[Bootable]'.  [Francesco Cosoleto]
   - support non-ascii characters in input  [Karel Zak]
   - use libblkid  [Matthias König]
chrt:
   - add --reset-on-fork  [Karel Zak]
   - add --verbose to man page, correct -V for --version, alphabetize  [Benno Schulenberg]
   - add support for SCHED_RESET_ON_FORK  [Adrian Knoth]
   - change two messages into four translatable sentences  [Benno Schulenberg]
   - slice help text into manageable chunks for translators  [Benno Schulenberg]
docs:
   - fix umount --fake note in ReleaseNotes  [Karel Zak]
   - update  ReleaseNotes  [Karel Zak]
   - update AUTHORS file  [Karel Zak]
   - update TODO  [Karel Zak]
   - update TODO file  [Karel Zak]
   - update tests/README  [Karel Zak]
   - update v2.18 ReleaseNotes  [Karel Zak]
fallocate:
   - check for number of arguments  [Karel Zak]
   - support suffixes for --offset and --length  [Karel Zak]
fdisk:
   - add -c option (switch off DOS mode)  [Karel Zak]
   - cleanup alignment, default to 1MiB offset  [Karel Zak]
   - cleanup help, add -h option  [Karel Zak]
   - cleanup warnings  [Karel Zak]
   - correctly truncate and align translated partition names  [Pádraig Brady]
   - disable DOS mode and cylinders by default  [Karel Zak]
   - don't check alignment_offset against geometry  [Karel Zak]
   - don't include scsi.h  [Karel Zak]
   - don't use 1MiB grain on small devices  [Karel Zak]
   - extend -c and -u options to support old DOS stuff  [Karel Zak]
   - fallback for topology values  [Karel Zak]
   - fix 'p' output for sun label  [Karel Zak]
   - fix -b <sectorsize>  [Karel Zak]
   - fix ALIGN_UP  [Karel Zak]
   - fix check_alignment()  [Karel Zak]
   - fix default first sector  [Karel Zak]
   - improve 'move begin of partition' command  [Karel Zak]
   - improve add partition dialog  [Karel Zak]
   - improve the description of -c and -u options on man page  [Benno Schulenberg]
   - remove erroneous <size> argument from -u option in help text  [Benno Schulenberg]
   - replace bzero with memset  [Jon Ringle]
   - swap VTOC values for warning messages  [Karel Zak]
   - untangle the reporting of deprecated mode and unit  [Benno Schulenberg]
   - use "optimal I/O size" in warnings  [Karel Zak]
   - use 1MiB offset and grain always when possible  [Karel Zak]
   - use more elegant way to count and check alignment  [Karel Zak]
   - use optimal_io_size  [Karel Zak]
findmnt:
   - add man page  [Karel Zak]
   - add new command  [Karel Zak]
   - add tree support  [Karel Zak]
   - add {fs,vfs}-options columns  [Karel Zak]
   - don't swap source and target for tags  [Karel Zak]
   - minor coding style fixes  [Karel Zak]
   - move from /sbin to /bin  [Karel Zak]
   - rewrite to use lib/tt.c  [Karel Zak]
   - small change in usage()  [Karel Zak]
   - ungettextize the directions and fix spelling  [Benno Schulenberg]
fsck:
   - fix typo in fsck.8  [Francesco Cosoleto]
fsck/mkfs/mount:
   - unify default search paths for helpers  [Mike Frysinger]
fsfreeze:
   - new command  [Hajime Taira]
git:
   - ignore index files generated by ctags and cscope  [Petr Uzel]
hwclock:
   - add --predict for predicting RTC reading at a given time  [Timo Juhani Lindfors]
include:
   - add min/max macros  [Karel Zak]
   - move shlibs/.../list.h to the include/ directory  [Karel Zak]
ionice:
   - fix typo  [Pierre Hauweele]
   - non-cryptic error message when ionice can't execvp  [Ævar Arnfjörð Bjarmason]
ipcrm:
   - remove redundant message in case of invalid option  [Francesco Cosoleto]
ipcs:
   - add missing "PIDs" to related shared memory header text  [Francesco Cosoleto]
   - advise translators a different output format  [Francesco Cosoleto]
   - get rid of colons from header strings for consistency  [Francesco Cosoleto]
   - reorganize help and usage texts  [Francesco Cosoleto]
ldattach:
   - add --iflag command line option  [Tilman Schmidt]
   - create a generic functions for name=value tables  [Karel Zak]
   - prints help to stdout  [Karel Zak]
lib:
   - add #ifndef around min() max() macros  [Karel Zak]
   - add fallback for libc (uClibc) without CPU_ALLOC  [Karel Zak]
   - add mangle.c for mtab (fstab or swaps) encoding  [Karel Zak]
   - add strtosize() function  [Karel Zak]
   - add tt.c (Tree and Table output)  [Karel Zak]
   - avoid compilation failure on rawhide  [Jim Meyering]
   - fix blkdev_find_size()  [Karel Zak]
   - remove unwanted debug messages  [Karel Zak]
   - tt.c  don't print header for empty table  [Karel Zak]
   - tt.c - fix minimal width of column  [Karel Zak]
   - use fstat() as fallback in blkdev_get_size()  [Karel Zak]
libblkid:
   - Add initial support for BeFS detection  [Jeroen Oortwijn]
   - Add probing function for BeFS  [Jeroen Oortwijn]
   - add PART_ENTRY_{SCHEME,NUMBER}  [Karel Zak]
   - add blkid_openat(), cleanup blkid_fstatat()  [Karel Zak]
   - add blkid_partition_set_type()  [Karel Zak]
   - add blkid_partlist_get_table()  [Karel Zak]
   - add blkid_probe_all_removable()  [Karel Zak]
   - add blkid_probe_get_{offset,fd} functions  [Karel Zak]
   - add exFAT file system detection support  [Andrew Nayenko]
   - add generic functions for sysfs attributes  [Karel Zak]
   - add microsecond resolution for cache entries  [Karel Zak]
   - add minimal sizes for OCFS and GFS  [Karel Zak]
   - add mnt_iter_get_direction()  [Karel Zak]
   - add partial support for superblock binary API  [Karel Zak]
   - add paths and tags cache  [Karel Zak]
   - add sanity checks for FAT to DOS PT parser  [Karel Zak]
   - add support for PART_ENTRY_* values  [Karel Zak]
   - add support for partition flags/attributes  [Karel Zak]
   - add ultrix PT support  [Karel Zak]
   - avoid probing CDs for RAID  [M.S.Colclough]
   - call read() per FAT root dir entry  [Karel Zak]
   - cleanup fstat() usage  [Karel Zak]
   - cleanup some docs  [Karel Zak]
   - cleanup superblocks_safeprobe()  [Karel Zak]
   - cleanup usage of empty topology values  [Karel Zak]
   - disable read-ahead when probing device files  [Linus Torvalds]
   - don't call read() per FAT dir-entry on large disks  [Karel Zak]
   - don't gather PART_ENTRY_* values for binary interface  [Karel Zak]
   - don't probe for GPT and Unixware PT on floppies  [Karel Zak]
   - don't probe for nested PT on tiny disks (<=1.44MiB)  [Karel Zak]
   - don't return error on empty files  [Karel Zak]
   - don't use fstat() in blkid_get_dev_size()  [Karel Zak]
   - export functions to get whole-disk devno  [Karel Zak]
   - fix 'partno' usage  [Karel Zak]
   - fix LUKS version  [Karel Zak]
   - fix ZSF detection  [Andreas Dilger]
   - fix blkid_partlist_devno_to_partition() for extended partitions  [Karel Zak]
   - fix collision between RAID and PT probing  [Karel Zak]
   - fix display of device size  [Karel Zak]
   - fix infinite loop when probe chain bails out early  [Colin Watson]
   - fix readline usage  [Karel Zak]
   - fix segfault in drdb  [Matthias König]
   - fix some typos  [Milan Broz]
   - improbe DDF detection  [Karel Zak]
   - improve MD 0.90 detection  [Karel Zak]
   - improve MD 0.90.0 detection (use sb->size)  [Karel Zak]
   - improve MD 1.0 detection, add UUID_SUB  [Karel Zak]
   - improve Sun VTOC  [Karel Zak]
   - improve ZFS detection and add LABEL and UUID extraction  [Andreas Dilger]
   - minor fixes in befs.c  [Karel Zak]
   - more robust minix probing  [Karel Zak]
   - optimize UDF label reading  [Karel Zak]
   - prevent overflow in BeFS  [Jeroen Oortwijn]
   - probe for (non-linux) RAIDs on whole devices only  [Karel Zak]
   - read whole SB buffer (69kB) on large disks  [Karel Zak]
   - read() optimization for small devices  [Karel Zak]
   - remove "0x" prefix from DRBD UUID  [Karel Zak]
   - reset BLKID_TINY_DEV flag in blkid_probe_set_device  [Pascal Terjan]
   - reset superblocks result after error  [Karel Zak]
   - restrict RAID/FS proving for small devices (1.4MiB)  [Karel Zak]
   - rewrite blkid_probe_get_buffer()  [Karel Zak]
   - set correct offsets for TuxOnIce signature  [Chow Loong Jin]
   - set minimal size for jfs, reiser, swap and zfs  [Karel Zak]
   - support alignment_offset=-1  [Karel Zak]
   - tiny change in debug output  [Karel Zak]
   - export magic strings from raids  [Karel Zak]
   - move getsize.c code to lib/  [Karel Zak]
libmount:
   - add #warning libmount API is not stable yet!  [Karel Zak]
   - add basic dirs  [Karel Zak]
   - add basic utils  [Karel Zak]
   - add debug support  [Karel Zak]
   - add docs  [Karel Zak]
   - add fstab/mtab/mountinfo lookup routines  [Karel Zak]
   - add fstab/mtab/mountinfo parsing routines  [Karel Zak]
   - add list routines and generic iterator  [Karel Zak]
   - add mnt_cache_find_tag_value()  [Karel Zak]
   - add mnt_entry  [Karel Zak]
   - add mnt_match_{fstype,options} functions  [Karel Zak]
   - add mnt_optstr_* functions  [Karel Zak]
   - add mtab locking code  [Karel Zak]
   - add new debug messages  [Karel Zak]
   - add optls (options container)  [Karel Zak]
   - add support for userdata and work with VFS tree  [Karel Zak]
   - add test_version  [Karel Zak]
   - add version.c  [Karel Zak]
   - another Makefile.am fix  [Karel Zak]
   - cleanup cache flags and debug messages  [Karel Zak]
   - cleanup docs  [Karel Zak]
   - don't build tests by default  [Karel Zak]
   - export mnt_init_debug()  [Karel Zak]
   - fix Makefile.am  [Karel Zak]
   - fix mnt_fs_match_source()  [Karel Zak]
   - fix name of mnt_fs_get_*_optstr()  [Karel Zak]
   - fix some gtkdoc warnings  [Karel Zak]
   - merge vfs and fs options more carefully  [Karel Zak]
   - proper tests definition in Makefile.am  [Karel Zak]
   - read devno, ID and parent ID from /proc/self/mountinfo  [Karel Zak]
   - remove mnt_open_device()  [Karel Zak]
   - rename mnt_optls_iterate_options()  [Karel Zak]
   - update symbols table  [Karel Zak]
   - use mangle function from lib/  [Karel Zak]
logger:
   - add note about 'kern' to the man page  [Karel Zak]
login:
   - check that after tty reopen we still work with a terminal  [Karel Zak]
   - don't link PAMed version with libcrypt  [Karel Zak]
   - use fd instead of pathname for update tty's owner and permissions  [Yann Droneaud]
losetup:
   - support suffixes and hex numbers for --offset and --sizelimit  [Karel Zak]
lscpu:
   - add CPU_EQUAL_S definition for old/obscure libc  [Karel Zak]
   - cleanup path_scanstr()  [Karel Zak]
   - cleanup used names  [Karel Zak]
   - fix CPU_EQUAL_S macro  [Karel Zak]
   - fix cpuid opcode detection  [Henne Vogelsang]
   - fix typo in lscpu.1  [Francesco Cosoleto]
   - fix typo, "faild" to "failed"  [Benno Schulenberg]
   - gettextize "CPU(s)"  [Francesco Cosoleto]
   - improve --sysroot code  [Karel Zak]
   - replace LC_MESSAGES with LC_ALL in setlocate()  [Francesco Cosoleto]
   - use cpuset masks, read data for all CPUs  [Karel Zak]
messages:
   - gettextize a few skipped or forgotten ones  [Benno Schulenberg]
mkswap:
   - add a note that -p is uncecessary  [Karel Zak]
   - don't call blkdev_find_size()  [Karel Zak]
   - don't use too small user-specified page size  [Karel Zak]
   - fixed strtoll() usage  [Yann Droneaud]
   - more robust strtoull() usage  [Karel Zak]
   - move write_all() to include/writeall.h  [Karel Zak]
   - tweak the man page  [Benno Schulenberg]
   - use calloc(), remove obsolete v1 header usage  [Karel Zak]
   - zap bootbits on regular files  [Karel Zak]
mount:
   - add notes about -o remount,ro,bind to mount.8  [Karel Zak]
   - advise users to use "modprobe", not "insmod"  [Karel Zak]
   - automatically detect and loop-mount regular files  [Karel Zak]
   - detect when kernel silently adds MS_RDONLY flag  [Petr Uzel]
   - don't create loopdev for MS_BIND  [Karel Zak]
   - fix coding style  [Karel Zak]
   - fix information about XFS log buffers in mount.8  [Christoph Hellwig]
   - fix memory leak  [Petr Uzel]
   - fix typo in comment  [Petr Uzel]
   - fix typos in mount.8  [Petr Uzel]
   - more explicitly explain fstab usage in mount.8  [Karel Zak]
   - more robust offset= and sizelimit= parsing  [Karel Zak]
   - posix option of vfat is obsolete  [Yoshihiro Takahashi]
   - properly ignore comments in /etc/filesystems  [Mike Frysinger]
   - report ambivalent FS detection, improve brute force detection  [Karel Zak]
   - revert ugly ENOMEDIUM support  [Karel Zak]
   - support suffixes for offset= and sizelimit=  [Karel Zak]
   - update documentation about barrier mount options  [Jan Kara]
   - use %u for uid_t and gid_t  [Karel Zak]
   - use auto-loopdev for all known filesystems  [Karel Zak]
   - use unmangle/mangle() from lib  [Karel Zak]
   - warn users that mtab is read-only  [Karel Zak]
namei:
   - fix man page formatting  [Vladimir Brednikov]
partx:
   - do not add nonexistent partitions  [Phillip Susi]
   - fix infinite loop  [Karel Zak]
po:
   - merge changes  [Karel Zak]
   - update cs.po (from translationproject.org)  [Petr Pisar]
   - update es.po (from translationproject.org)  [Santiago Vila Doncel]
   - update eu.po (from translationproject.org)  [Mikel Olasagasti Uranga]
   - update id.po (from translationproject.org)  [Arif E. Nugroho]
   - update ja.po (from translationproject.org)  [Makoto Kato]
   - update list of files  [Karel Zak]
   - update nl.po (from translationproject.org)  [Benno Schulenberg]
   - update pl.po (from translationproject.org)  [Jakub Bogusz]
   - update vi.po (from translationproject.org)  [Clytie Siddall]
rdev:
   - remove this deprecated command  [Karel Zak]
rtcwake:
   - add --dry-run option  [Karel Zak]
   - add disable action for rtc alarm  [Marek Otahal]
   - add disable action to rtcwake man page  [Marek Otahal]
   - does miss the "off" option  [Karel Zak]
script:
   - optionally compile with libutempter to update utmp  [Karel Zak]
   - preserve child exit status  [Karel Zak]
sfdisk:
   - make sure writes make it to disk in write_partitions()  [Bryn M. Reeves]
swaplabel:
   - fix typo in man page  [Karel Zak]
   - new command  [Jason Borden]
swapon:
   - fix swapsize calculation  [Karel Zak]
   - move DELETED_SUFFIX to include/pathnames.h  [Karel Zak]
   - remove " (deleted)" from filenames from /proc/swaps  [Karel Zak]
   - use unmangle() for filenames from /proc/swaps  [Karel Zak]
taskset:
   - add NLS support, use err.h, cleanup  [Karel Zak]
   - move NR_CPUS determination to lib/cpuset.c  [Karel Zak]
   - move bitmap routines to lib/cpuset.c  [Karel Zak]
   - use libc based cpu_set_t  [Karel Zak]
tests:
   - add BeFS test image  [Karel Zak]
   - add blkid test for TuxOnIce  [Karel Zak]
   - add blkid tests for RAID1  [Karel Zak]
   - add cpuset regression test  [Karel Zak]
   - add fdisk alignment tests  [Karel Zak]
   - add lscpu dump from Dell R710, 8-core Nehalem w/HT (RHEL 5.5)  [Karel Zak]
   - added tests against strtosize  [Yann Droneaud]
   - explicitly use --chunk and --metadata in MD test  [Karel Zak]
   - fix RAIDs tests  [Karel Zak]
   - fix and update old fdisk tests  [Karel Zak]
   - fix whitespaces  [Karel Zak]
   - mount cramfs read-only  [Karel Zak]
   - update FS test images  [Karel Zak]
   - update blkid test for raid1  [Karel Zak]
   - update blkid/md-raid1-* tests  [Karel Zak]
   - update fdisk tests  [Karel Zak]
   - update ipcs/headers test  [Francesco Cosoleto]
   - update lscpu  [Karel Zak]
   - update lscpu test  [Karel Zak]
   - use POSIX locale  [Yann Droneaud]
textual:
   - fix typos  [Karel Zak]
   - fix typos, and rephrase some things for clarity  [Benno Schulenberg]
   - slightly improve two README files  [Benno Schulenberg]
umount:
   - add --fake option to umount(8)  [Miklos Szeredi]
   - do not sync() as the kernel does it by itself  [Petr Uzel]
unshare:
   - drop potential euid privileges before exec  [Karel Zak]
uuidd:
   - spell the plural of "UUID" consistently as "UUIDs"  [Benno Schulenberg]
wipefs:
   - cleanup usage() and man page  [Karel Zak]
   - fix license (GPL -> GPLv2+)  [Karel Zak]
   - fix mem usage  [Karel Zak]
   - fix memory leaks  [Karel Zak]
   - ignore devices with partition table  [Karel Zak]
   - print warning is PT detected  [Karel Zak]
   - support suffixes for --offset  [Karel Zak]
