On 12/21/13 05:03, Adam Walters wrote:
> This patchset adds a driver named 'config' that allows access to 
> configuration data, such as secret and storage definitions. This is a 
> pre-requisite for my next patchset which resolves the race condition on 
> libvirtd startup and the circular dependencies between QEMU and the storage 
> driver.
> 
> The basic rationale behind this idea is that there exist circumstances under 
> which a driver may need to access things such as secrets during a time at 
> which there is no active connection to a hypervisor. Without a connection, 
> the data can't be accessed currently. I felt that this was a much simpler 
> solution to the problem that building new APIs that do not require a 
> connection to operate.
> 
> This driver is technically what one may call a hypervisor driver, but it does 
> not implement any domain operations. It simply exists to handle requests by 
> drivers for access to informatino that would otherwise require a connection. 
> The URI used for this driver is 'config:///' and has been tested working on 4 
> different machines of mine, running three different distributions of Linux 
> (Archlinux, Gentoo, and CentOS). Being a very simple driver, I would expect 
> it to work pretty much anywhere.
> 
> I would love to hear any comments and suggestions you may have about this 
> driver. At the very least this plus my next patchset resolves the startup 
> race condition on my machine. If a more robust setup (likely a new internal 
> API) is in the works, this driver could act as a band-aid to allow access to 
> this type of data in the interim if a better resolution is a ways off.
> 
> Adam Walters (7):
>   config: Adding source for the config driver
>   config: Adding header for the config driver
>   virterror: Adding a new VIR_FROM_ define
>   libvirtd: Add config driver hooks
>   po: Add config_driver.c to POTFILES.in
>   configure: Add config driver to configure script
>   Makefile: Add config driver to src/Makefile.am
> 
>  configure.ac                |  10 ++
>  daemon/libvirtd.c           |  21 ++--
>  include/libvirt/virterror.h |   2 +
>  po/POTFILES.in              |   1 +
>  src/Makefile.am             |  25 +++++
>  src/config/config_driver.c  | 237 
> ++++++++++++++++++++++++++++++++++++++++++++
>  src/config/config_driver.h  |  44 ++++++++
>  src/util/virerror.c         |   2 +
>  8 files changed, 336 insertions(+), 6 deletions(-)
>  create mode 100644 src/config/config_driver.c
>  create mode 100644 src/config/config_driver.h
> 

In general the code looks sane. I'm looking forward to see a v2 of this
series and I promise it won't take that long to review it as this time :).

Peter

Attachment: signature.asc
Description: OpenPGP digital signature

--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to