[libvirt] [PATCH 5/5] storage: Add helper to compare logical pool def against pvs output

John Ferlan jferlan at redhat.com
Wed Dec 16 12:46:18 UTC 2015



On 12/16/2015 07:02 AM, Ján Tomko wrote:
> On Mon, Dec 07, 2015 at 03:47:58PM -0500, John Ferlan wrote:
>> https://bugzilla.redhat.com/show_bug.cgi?id=1025230
>>
>> Add a new helper virStorageBackendLogicalMatchPoolSource to compare the
>> pool's source name against the output from a 'pvs' command to list all
>> volume group physical volume data on the host.  In addition, compare the
>> pool's source device list against the particular volume group's device
>> list to ensure the source device(s) listed for the pool match what the
>> was listed for the volume group.
>>
>> Then for pool startup or check API's we need to call this new API in
>> order to ensure that the pool we're about to start or declare active
>> during checkPool has a valid definition vs. the running host.
>>
> 
> This patch breaks starting of logical pools with no source devices.
> 
> Jan
> 

Not enough information for me to go on... Can you provide sample XML
that works prior to the change? From just your description I assume you
mean:

<source>
    <name>xxx</name>
    <format type='lvm2'/>
</source>

instead of having a

    <device path='/dev/sde'/>

As the source device

Without a source device how would pool-build work (vgcreate)?  Without a
volume group, then vgchange (what pool-start calls) won't work. However,
instead of getting:

virsh pool-start lvm_test
error: Failed to start pool lvm_test
error: internal error: Child process (/usr/sbin/vgchange -aly lvm_test)
unexpected exit status 5:   Volume group "lvm_test" not found
  Cannot process volume group lvm_test

One would get:

virsh pool-start lvm_test
error: Failed to start pool lvm_test
error: unsupported configuration: cannot find logical volume group name
'lvm_test'


Tks -

John




More information about the libvir-list mailing list