failed to load module libvirt_driver_storage.so

Today I was installing virt-sysprep tool on one of KVM hosts. When this was done I couldn't list VMs anymore using virsh:

[root@host1 ~]# virsh list --all
[454/564]
 Id    Name                           State
 ----------------------------------------------------

Hmm that's not normal obsiously. Checked the libvirtd status:

[root@host1 ~]# service libvirtd status
Redirecting to /bin/systemctl status  libvirtd.service
libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.ser \
   vice; enabled)
   Active: active (running) since Mon 2015-04-06 15:43: \
   55 CEST; 1h 16min ago
     Docs: man:libvirtd(8)
           http://libvirt.org
 Main PID: 21191 (libvirtd)
   CGroup: /system.slice/libvirtd.service
           ├─ 5865 /sbin/dnsmasq --conf-file=/var/lib/l \
           ibvirt/dnsmasq/default.conf
           └─21191 /usr/sbin/libvirtd

...
Apr 06 17:01:42 host1.devops.ent libvirtd[6254]: failed \
 to load module 
/usr/lib64/libvirt/connection-driver/libvirt_driver_sto \
rage.so 
/usr/lib64/libvirt/connection-driver/libvirt_driver_sto \
rage.so: symbol 
dm_task_get_info_with_deferred_remove, version Base not \
 defined in file 
libdevmapper.so.1.02 with link time reference
Apr 06 17:01:42 host1.devops.ent libvirtd[6254]: failed \
 to load module 
/usr/lib64/libvirt/connection-driver/libvirt_driver_qem \
u.so 
/usr/lib64/libvirt/connection-driver/libvirt_driver_qem \
u.so: undefined 
symbol: virStorageFileCreate
...

I confirmed that installing virt-sysprep caused also upgrading libvirtd related packages:

 Updated     libvirt-1.1.1-29.el7_0.7.x86_64 \
               @updates
    Update              1.2.8-16.el7_1.2.x86_64 \
                     @updates
    Updated     libvirt-client-1.1.1-29.el7_0.7.x86_64 \
                     @updates
    Update                     1.2.8-16.el7_1.2.x86_64 \
                     @updates
    Updated     libvirt-daemon-1.1.1-29.el7_0.7.x86_64 \
                     @updates
    Update                     1.2.8-16.el7_1.2.x86_64 \
                     @updates
    Updated     libvirt-daemon-config-network-1.1.1-29. \
    el7_0.7.x86_64   @updates
    Update                                    1.2.8-16. \
    el7_1.2.x86_64   @updates
    Updated     libvirt-daemon-config-nwfilter-1.1.1-29 \
    .el7_0.7.x86_64  @updates
    Update                                     1.2.8-16 \
    .el7_1.2.x86_64  @updates
    Updated     libvirt-daemon-driver-interface-1.1.1-2 \
    9.el7_0.7.x86_64 @updates
    Update                                      1.2.8-1 \
    6.el7_1.2.x86_64 @updates
    Updated     libvirt-daemon-driver-lxc-1.1.1-29.el7_ \
    0.7.x86_64       @updates
    Update                                1.2.8-16.el7_ \
    1.2.x86_64       @updates
    Updated     libvirt-daemon-driver-network-1.1.1-29. \
    el7_0.7.x86_64   @updates
    Update                                    1.2.8-16. \
    el7_1.2.x86_64   @updates
    Updated     libvirt-daemon-driver-nodedev-1.1.1-29. \
    el7_0.7.x86_64   @updates
    Update                                    1.2.8-16. \
    el7_1.2.x86_64   @updates
    Updated     libvirt-daemon-driver-nwfilter-1.1.1-29 \
    .el7_0.7.x86_64  @updates
    Update                                     1.2.8-16 \
    .el7_1.2.x86_64  @updates
    Updated     libvirt-daemon-driver-qemu-1.1.1-29.el7 \
    _0.7.x86_64      @updates
    Update                                 1.2.8-16.el7 \
    _1.2.x86_64      @updates
    Updated     libvirt-daemon-driver-secret-1.1.1-29.e \
    l7_0.7.x86_64    @updates
    Update                                   1.2.8-16.e \
    l7_1.2.x86_64    @updates
    Updated     libvirt-daemon-driver-storage-1.1.1-29. \
    el7_0.7.x86_64   @updates
    Update                                    1.2.8-16. \
    el7_1.2.x86_64   @updates
    Dep-Install libvirt-daemon-kvm-1.2.8-16.el7_1.2.x86 \
    _64              @updates

So once more I read the problematic log entry:

failed to load module /usr/lib64/libvirt/connection-dri \
ver/libvirt_driver_storage.so /usr/lib64/libvirt/connec \
tion-driver/libvirt_driver_storage.so: symbol dm_task_g \
et_info_wit
h_deferred_remove, version Base not defined in file lib \
devmapper.so.1.02 with link time reference

and decided to yum upgrade device-mapper-libs. Afterwards I restarted libvirtdand everything started working perfectly.

This would not happen if I had updated all the libraries, but unfortunately all I wanted was virt-sysprep installed - not update'ing all packages.

Finally filed a bugrequest