[libvirt] [PATCH] docs: Document NVRAM behavior on transient domains

Michal Privoznik mprivozn at redhat.com
Wed Nov 19 08:27:20 UTC 2014

On 19.11.2014 07:22, Martin Kletzander wrote:
> On Tue, Nov 18, 2014 at 05:06:34PM +0100, Michal Privoznik wrote:
>> Since 1.2.8 it's possible to use OVMF on domains. Moreover, it's
>> possible to have libvirt create NVRAM file per domain. Later,
>> when domain is undefined, the file is removed too. However,
>> things are a bit complicated when domain's transient. There's no
>> undefine to transient domains. There are two options: 1) leave
>> the file behind and let mgmt app remove it. 2) remove it
>> automatically as domain dies.
>> But, in some scenarios mgmt app may want to preserve the file,
>> copy it somewhere safe, and then copy it back when the domain is
>> starting again. And this wouldn't be possible with case 2). So,
>> even though case 1) leaves some files behind (possibly undeleted
>> for a long time), the files themselves are small (128K each). And
>> data loss is worse than full disk, isn't it?
> Just wondering, Does that mean that _if_ the management application
> relies on our remote driver (has no access) and wants to manage the
> file it has to create a pool type='dir' where the files are or
> something similar?  It can then do vol-{up,down}load or vol-delete
> properly.  And by default all the variable stores are by default in
> the same location (/var/lib/libvirt/nvram), so one pool for that makes
> perfect sense, am I right?

Yes, that's exactly how NVRAM files are to be manipulated using our 
storage APIs. Just note, that the path to NVRAM store is configurable in 
domain XML, so users may configure a different path to already existing 
dir pool. Then, when domain's starting up, libvirt will create the NVRAM 
file and copy the contents from central image into it.

>> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
>> ---
>> docs/formatdomain.html.in | 5 ++++-
>> 1 file changed, 4 insertions(+), 1 deletion(-)
>> diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
>> index d4189e6..705d497 100644
>> --- a/docs/formatdomain.html.in
>> +++ b/docs/formatdomain.html.in
>> @@ -147,7 +147,10 @@
>>         started up libvirt copies so called master NVRAM store file
>> defined
>>         in <code>qemu.conf</code>. If needed, the <code>template</code>
>>         attribute can be used to per domain override map of master
>> NVRAM stores
>> -        from the config file. <span class="since">Since
>> 1.2.8</span></dd>
>> +        from the config file. Note, that for transient domains if the
>> NVRAM file
>> +        has been created by libvirt it is left behind and it management
> s/it management/it is management/
> ACK with the typo changed.
> Martin

Ah, thanks for catching that. Fixed and pushed.


More information about the libvir-list mailing list