Bug 968128

Summary: Libvirtd can't find the lockd's socket
Product: Red Hat Enterprise Linux 7 Reporter: Luwen Su <lsu>
Component: libvirtAssignee: Ján Tomko <jtomko>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0CC: acathrow, ajia, dallan, dyuan, mzhan
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libvirt-1.1.0-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-13 09:56:41 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 975378    

Description Luwen Su 2013-05-29 03:31:10 UTC
Description of problem:
After configuration qemu-lockd.conf , libvirtd will fail to restart because error
Failed to connect socket to '/var/run/libvirt/virtlockd-sock': No such file or directory
,but the socket file is named virtlockd.sock and located at
/var/run/libvirt/virtlockd/virtlockd.sock 

Version-Release number of selected component (if applicable):
libvirt-1.0.5-2.el7.x86_64
qemu-kvm-1.5.0-2.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.
#systemctl start virtlockd.service

2.
#tail -1 /etc/libvirt/qemu.conf
lock_manager = "lockd"

#tail -3 /etc/libvirt/qemu-lockd.conf
auto_disk_leases = 1
require_lease_for_disks = 1
file_lockspace_dir = "/var/lib/libvirt/lockd/files"

3.
#systemctl restart libvirtd.service
libvirtd wil report error below and can't start
Failed to connect socket to '/var/run/libvirt/virtlockd-sock': No such file or directory

Actual results:
the function doesn't work

Expected results:
can use

Comment 4 Ján Tomko 2013-06-04 13:28:09 UTC
I proposed a patch changing the socket path in the systemd config file:
https://www.redhat.com/archives/libvir-list/2013-June/msg00085.html

Comment 5 Ján Tomko 2013-06-05 11:58:43 UTC
The socket path fix is now pushed upstream:

commit 70fe129546545f9683ce57e6946dd80a08b54d2b
Author:     Ján Tomko <jtomko>
AuthorDate: 2013-06-04 13:36:56 +0200
Commit:     Ján Tomko <jtomko>
CommitDate: 2013-06-05 10:17:28 +0200

    virtlockd: fix socket path
    
    Change the socket path to match the one used by lockd driver.

But it still fails with selinux enabled:
Jun  5 07:41:51 456rhel setroubleshoot: SELinux is preventing /usr/sbin/libvirtd from connectto access on the unix_stream_socket /run/libvirt/virtl
ockd-sock. For complete SELinux messages. run sealert -l 8ab78190-8e08-45f5-8d2e-02862d493dea

Comment 6 Luwen Su 2013-07-04 03:43:18 UTC
Now , the virtlockd can start and no selinux's issue with packages
selinux-policy-3.12.1-56.el7.noarch
libvirt-1.1.0-1.el7.x86_64 , 

But when generate lease file , the virtlockd's daemon will show
End of file while reading data: Input/output error , 

and no related file or directory created. I will file another bug for it later, 
and set this one Verify first.

Comment 7 Ludek Smid 2014-06-13 09:56:41 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.