[libvirt] [PATCHv2 04/14] event: share state driver between test:///default connections
jferlan at redhat.com
Tue Jan 7 14:16:54 UTC 2014
On 01/06/2014 05:27 PM, Eric Blake wrote:
> Prior to this patch, every test:/// URI has its own event manager,
> which means that registering for an event can only ever receive
> events from the connection where it issued the API that triggered
> the event. But the whole idea of events is to be able to learn
> about something where an API call did NOT trigger the action.
> In order to actually test asynchronous events, I wanted to be able
> to tie multiple test connections to the same state. Use of a file
> in a test URI is still per-connection state, but now parallel
> connections to test:///default (from the same binary, of course)
> now share common state and can affect one another.
> * src/test/test_driver.c (testConnectOpen): Move per-connection
> state initialization...
> (testOpenFromFile): ...here.
> (defaultConn, defaultConnections, defaultLock, testOnceInit): New
> shared state.
> (testOpenDefault): Only initialize on first connection.
> (testConnectClose): Don't clobber state if still shared.
> Signed-off-by: Eric Blake <eblake at redhat.com>
> src/test/test_driver.c | 86 ++++++++++++++++++++++++++++++++++++--------------
> 1 file changed, 63 insertions(+), 23 deletions(-)
Continuing with the matched set theme....
Does every compiler/architecture guarantee that 'defaultConnections'
initializes to zero? It's a nit, but better safe than sorry I suppose.
More information about the libvir-list