[Kimchi-devel] [PATCH] bug fix: Allow extend a logical pool
Aline Manera
alinefm at linux.vnet.ibm.com
Wed Mar 5 17:43:10 UTC 2014
On 03/05/2014 03:32 AM, Royce Lv wrote:
> This is because blkid just retrieve a labelled block device while
> lsblk can identify all block devices, right?
>
> Reviewed-by: Royce Lv<lvroyce at linux.vnet.ibm.com>
>
> Minor suggestion for naming below.
>
> On 2014年03月05日 05:09, Aline Manera wrote:
>> From: Aline Manera <alinefm at br.ibm.com>
>>
>> While trying to extend a logical pool I got the following error message:
>>
>> "/dev/vdb is not a valid disk/partition. Could not add it to the pool
>> my-logical-pool"
>>
>> But the same partition "/dev/vdb" is listed on GET /host/partitions.
>> Then I realized the "blkid" is not the correct command to check a
>> partition exists for raw disks.
>>
>> From blkid man page:
>> It can determine the type of content (e.g. filesystem or swap) that a
>> block
>> device holds, and also attributes (tokens, NAME=value pairs) from
>> the
>> content metadata (e.g. LABEL or UUID fields).
>>
>> Which is not useful for a raw disk.
>>
>> From lsblk man page:
>> lsblk lists information about all or the specified block devices.
>>
>> So use "lsblk" command instead of "blkid" to verify the disk exists in
>> the system.
>>
>> Signed-off-by: Aline Manera <alinefm at br.ibm.com>
>> ---
>> src/kimchi/model/storagepools.py | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/kimchi/model/storagepools.py
>> b/src/kimchi/model/storagepools.py
>> index 76ab2d6..d012ca9 100644
>> --- a/src/kimchi/model/storagepools.py
>> +++ b/src/kimchi/model/storagepools.py
>> @@ -254,7 +254,7 @@ class StoragePoolModel(object):
>> def _update_lvm_disks(self, pool_name, disks):
>> # check if all the disks/partitions exists in the host
>> for disk in disks:
>> - blkid_cmd = ['blkid', disk]
>> + blkid_cmd = ['lsblk', disk]
> "blkid_cmd" variable name need to be changed because it refer to
> "lsblk" cmd.
Done
>> output, error, returncode = run_command(blkid_cmd)
>> if returncode != 0:
>> kimchi_log.error('%s is not a valid disk/partition.
>> Could not '
>> @@ -281,6 +281,7 @@ class StoragePoolModel(object):
>> pool.setAutostart(1)
>> else:
>> pool.setAutostart(0)
>> +
>> if 'disks' in params:
>> # check if pool is type 'logical'
>> xml = pool.XMLDesc(0)
>
More information about the Kimchi-devel
mailing list