mount: Check if mount specification is a symlink

If a Posix compatible file system is used as a backend for the VM images
the mount device can be a symlink. The common case is LVM. Both devices
in /dev/mapper/ and /dev/$VG/ are symlinks do /dev/dm-$N.

Currently in CentOS 6.5 when using GFS2 /proc/mounts always point to the real
device, even if a symlink has been used as argument of the mount command.
Example in my current system:

    /dev/dm-13 /rhev/data-center/mnt/_dev_mapper_vg__is5000-lv__virtstorage
    gfs2 rw,seclabel,noatime,nodiratime,hostdata=jid=0,nobarrier 0 0

In this case the check performed by the getRecord() method fails since
the record and the device in /proc/mounts are different. The former is
the symlink, the latter /dev/dm-$N.

This change checks if the record is an existing symlinks, and resolves
it before comparing the record with /proc/mounts.

On the other hand if the mount command doesn't resolve the symlink, like
when using ext4 file systems, the comparison with the original given
spec must still be performed. If either one matches the storage is
mounted.

Change-Id: I32aa019b52c28377c064966684986d20414df6db
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=888711
Signed-off-by: Enrico Tagliavini <enrico.tagliavini@gmail.com>
Reviewed-on: http://gerrit.ovirt.org/27321
Reviewed-by: Allon Mureinik <amureini@redhat.com>
Reviewed-by: Nir Soffer <nsoffer@redhat.com>
Reviewed-by: Federico Simoncelli <fsimonce@redhat.com>