[libvirt] New QEMU daemon for persistent reservations

Michal Privoznik mprivozn at redhat.com
Fri Nov 24 14:38:54 UTC 2017


On 08/22/2017 06:27 PM, Paolo Bonzini wrote:
> Hi all,
> 

Sorry for resurrecting old thread but seems like there was no agreement
reached.

We don't want to expose any paths because the fact that PR helper is a
separate binary that uses a UNIX socket to talk to qemu is a
implementation detail of qemu. Other HVs may have it differently.

However, we want to be able to turn it on/off or not mention it at all
on per-disk basis. So what has been suggested so far is:

  <disk type='block' device='disk'>
    <source dev='/dev/sda'>
    <target dev='sda' bus='scsi'/>
    <reservations enable='yes'/>
  </disk>

for privileged qemu, then:

  <disk type='block' device='disk'>
    <source dev='/dev/sda'>
    <target dev='sda' bus='scsi'/>
    <reservations enable='yes'>
      <source type='unix' path='/path/to/a/socket' mode='server'/>
    <reservations>
  </disk>

for unprivileged qemu, or:

  <disk type='block' device='disk'>
    <source dev='/dev/sda'>
    <target dev='sda' bus='scsi'/>
    <reservations enable='no'/>
  </disk>

for PR feature turned off (equivalent to leaving it out completely).

Now, my question is, in the first case - how should libvirt chose the
path? Should it be different for each disk/domain? How is the daemon
started in the first place - should libvirt start it? And when should
libvirt kill it?


Michal




More information about the libvir-list mailing list