The following is a list of commands or features that are going to be
removed in the util-linux-ng source tree.


What:	raw(8) command
When:	undefined yet; depends on kernel upstream
Why:	O_DIRECT can be used instead

---------------------------

What:	cryptoloop support in mount/losetup
When:	undefined yet
Why:	depreciated in favor of dm-crypt.

---------------------------

What:	elvtune
When:	undefined yet
Why:	useless for kernel >= 2.6.9

---------------------------

What:	arch(1) command
When:	2.14
Why:	deprecated in favor of uname(1) or arch(1) from coreutils

	The arch(1) has been added (during 2.13 development cycle) to coreutuls
	where it will be maintained as an alias for uname(1) command.

----------------------------

What:	kill(1) command
When:	2.14 or 2.15
Why:	deprecated in favor of kill from procps or bash build-in kill command

----------------------------

What:	newgrp(1)
When:	undefined yet
Why:	deprecated in favor of newgrp from shadow-utils

----------------------------

What:	last(1)
Whan:	undefined yet
Why:	nobody uses this implementation

----------------------------

What:	shutdown(1)
Whan:	undefined yet
Why:	nobody uses this implementation

----------------------------

What:	rdev(8), ramsize(8), vidmode(8) and  rootflags(8)
What:	undefined yet
Why:	i386 specific and probably useless

