Laine Stump <laine(a)laine.org> wrote on 2021/07/17 00:01:36:
From: Laine Stump <laine(a)laine.org>
To: Libvirt <libvir-list(a)redhat.com>
Cc: Motohiro Kawahito <JL25131(a)jp.ibm.com>, "Daniel P. Berrangé"
<berrange(a)redhat.com>
Date: 2021/07/17 00:01
Subject: [EXTERNAL] Re: Question about skipping
virDomainDiskDefAssignAddress
On 7/16/21 8:51 AM, Daniel P. Berrangé wrote:
> On Fri, Jul 16, 2021 at 09:49:40PM +0900, Motohiro Kawahito wrote:
>>> From: "Daniel P. Berrangé" <berrange(a)redhat.com>
>>> To: Motohiro Kawahito <JL25131(a)jp.ibm.com>
>>> Cc: libvir-list(a)redhat.com
>>> Date: 2021/07/16 17:22
>>> Subject: [EXTERNAL] Re: Question about skipping
>> virDomainDiskDefAssignAddress
>>>
>>> On Fri, Jul 16, 2021 at 01:01:50PM +0900, Motohiro Kawahito wrote:
>>>>> From: "Daniel P. Berrangé" <berrange(a)redhat.com>
>>>>> To: Motohiro Kawahito <JL25131(a)jp.ibm.com>
>>>>> Cc: libvir-list(a)redhat.com
>>>>> Date: 2021/07/16 00:42
>>>>> Subject: [EXTERNAL] Re: Question about skipping
>>>> virDomainDiskDefAssignAddress
>>>>>
>>>>
>>>>> With the exception of paravirtualized Xen guests, this field in
>>>>> libvirt XML is *completely* independant of the guest assigned
>>>>> device name.
>>>>>
>>>>> eg the XML might say /dev/vda, but the guest might decde to
>>>>> call it /dev/sda, or /dev/whatever or really absolutely
>>>>> anything.
>>>>
>>>> Thank you very much for this information! I understand it.
>>>> However, I don't understand how we can pass the target device
>> information
>>>> (e.g. 0A80) without an error. Do you know how to do it?
>>>>
>>>> My question was not good, so I opened another thread (How do we
>> specify
>>>> disk device names for non-Linux VMs in XML?).
>>>
>>> There is nothing that needs passing. The guest OS decides its naming
>>> however it wants to.
>>
>> We need to control device number from user. This device number would
be
>> used later, such as detach-disk. Can we pass device number
from
outside?
>
> Detach-disk requires the same information that is provided when the
> disk is first configured in libvir. This is completely separate to the
> device number / name seen inside the guest.
To expand on that, in the case of detaching a disk, you could 1) provide
the target dev in the XML you give to "virsh
detach-device", 2) give the
target dev name that you provided in the original XML when you call
"virsh detach-disk", or 3) you could specify a custom alias in the
original XML ("<alias name='ua-somename'/>" - note that the
leading
"ua-" is *required* for a custom alias name) and then give that same
alias to "virsh detach-device-alias". All three will allow you to
reliably select the disk you want, and have the same result.
Laine and Daniel, thank you very much for your comments. It's good to know
the flexibility in the naming convention. However, I found libvirtd
rejects a non-Linux device (i.e. '0A84') as a target device. The following
two commands return an error message, "Unknown disk name '0A84'". Can
you
let me know how we specify an unusual name, like '0A84'?
$ virsh attach-disk sample_domain /volumes/user.qcow2 0A84
$ virsh detach-disk sample_domain 0A84
If we should use an alias, could you advise me how to specify? Thank you
so much again for your help.