]> err.no Git - util-linux/commit
swapon: Canonicalize swap device
authorAlexey Gladkov <gladkov.alexey@gmail.com>
Tue, 14 Dec 2010 23:14:18 +0000 (02:14 +0300)
committerKarel Zak <kzak@redhat.com>
Thu, 16 Dec 2010 23:44:40 +0000 (00:44 +0100)
commitb98ff23e879826d0b041a18ca1090428748b9ef3
treeeffc71019581a1861850b43d1100e023ffcac4d9
parentf31505fe0396a880dad297d14c29c2415cc94272
swapon: Canonicalize swap device

Swapon checks whether a swap device is active by searching for the
device name in /proc/swaps. /proc/swaps always specifies the path
to real device file, even if the path to real device file, even
if symlink was passed to the swapon() system call.

This differs from /proc/mounts semantics where each string contains
exactly the same device name as it was passed to the mount*() system call.

If a swap partition resides on lvm, libblkid returns a name in
form /dev/mapper/*, but now there are symlinks pointing to device
files /dev/dm-*, resulting to /proc/swaps containing /dev/dm-*,
but swapon still looks for /dev/mapper/* and tries to activate
the swap partition again.

[kzak@redhat.com: - remove unnecessary changes from
                    is_in_proc_swaps()]

Signed-off-by: Alexey Gladkov <gladkov.alexey@gmail.com>
Tested-by: Petr Uzel <petr.uzel@suse.cz>
Signed-off-by: Karel Zak <kzak@redhat.com>
mount/swapon.c