[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH 1/5] Query for CACHE interface
From: Owen Smith <owen.smith@xxxxxxxxxx> Signed-off-by: Owen Smith <owen.smith@xxxxxxxxxx> --- src/xenvbd/adapter.c | 49 +++++++++++++++++++++++++++++++++---------------- src/xenvbd/adapter.h | 2 ++ 2 files changed, 35 insertions(+), 16 deletions(-) diff --git a/src/xenvbd/adapter.c b/src/xenvbd/adapter.c index a4220d1..59724bb 100644 --- a/src/xenvbd/adapter.c +++ b/src/xenvbd/adapter.c @@ -38,6 +38,7 @@ #include <version.h> #include <xencdb.h> #include <names.h> +#include <cache_interface.h> #include <store_interface.h> #include <evtchn_interface.h> #include <gnttab_interface.h> @@ -71,6 +72,7 @@ struct _XENVBD_ADAPTER { PXENVBD_THREAD DevicePowerThread; PIRP DevicePowerIrp; + XENBUS_CACHE_INTERFACE CacheInterface; XENBUS_EVTCHN_INTERFACE EvtchnInterface; XENBUS_STORE_INTERFACE StoreInterface; XENBUS_GNTTAB_INTERFACE GnttabInterface; @@ -1220,68 +1222,79 @@ AdapterInitialize( goto fail3; status = AdapterQueryInterface(Adapter, + XENBUS_CACHE, + &Adapter->CacheInterface, + FALSE); + if (!NT_SUCCESS(status)) + goto fail4; + + status = AdapterQueryInterface(Adapter, XENBUS_SUSPEND, &Adapter->SuspendInterface, FALSE); if (!NT_SUCCESS(status)) - goto fail4; + goto fail5; status = AdapterQueryInterface(Adapter, XENBUS_DEBUG, &Adapter->DebugInterface, FALSE); if (!NT_SUCCESS(status)) - goto fail5; + goto fail6; status = AdapterQueryInterface(Adapter, XENBUS_UNPLUG, &Adapter->UnplugInterface, FALSE); if (!NT_SUCCESS(status)) - goto fail6; + goto fail7; status = AdapterQueryInterface(Adapter, XENFILT_EMULATED, &Adapter->EmulatedInterface, TRUE); if (!NT_SUCCESS(status)) - goto fail7; + goto fail8; status = ThreadCreate(AdapterScanThread, Adapter, &Adapter->ScanThread); if (!NT_SUCCESS(status)) - goto fail8; + goto fail9; status = ThreadCreate(AdapterDevicePowerThread, Adapter, &Adapter->DevicePowerThread); if (!NT_SUCCESS(status)) - goto fail9; + goto fail10; return STATUS_SUCCESS; -fail9: - Error("fail9\n"); +fail10: + Error("fail10\n"); ThreadAlert(Adapter->ScanThread); ThreadJoin(Adapter->ScanThread); Adapter->ScanThread = NULL; -fail8: - Error("fail8\n"); +fail9: + Error("fail9\n"); RtlZeroMemory(&Adapter->EmulatedInterface, sizeof (XENFILT_EMULATED_INTERFACE)); -fail7: - Error("fail7\n"); +fail8: + Error("fail8\n"); RtlZeroMemory(&Adapter->UnplugInterface, sizeof (XENBUS_UNPLUG_INTERFACE)); -fail6: - Error("fail6\n"); +fail7: + Error("fail7\n"); RtlZeroMemory(&Adapter->DebugInterface, sizeof (XENBUS_DEBUG_INTERFACE)); -fail5: - Error("fail5\n"); +fail6: + Error("fail6\n"); RtlZeroMemory(&Adapter->SuspendInterface, sizeof (XENBUS_SUSPEND_INTERFACE)); +fail5: + Error("fail5\n"); + RtlZeroMemory(&Adapter->CacheInterface, + sizeof (XENBUS_CACHE_INTERFACE)); fail4: Error("fail4\n"); RtlZeroMemory(&Adapter->GnttabInterface, @@ -1352,6 +1365,9 @@ AdapterTeardown( RtlZeroMemory(&Adapter->SuspendInterface, sizeof (XENBUS_SUSPEND_INTERFACE)); + RtlZeroMemory(&Adapter->CacheInterface, + sizeof (XENBUS_CACHE_INTERFACE)); + RtlZeroMemory(&Adapter->GnttabInterface, sizeof (XENBUS_GNTTAB_INTERFACE)); @@ -2077,6 +2093,7 @@ AdapterGet ## _name ## Interface( \ * ## _name ## Interface = Adapter-> ## _name ## Interface; \ } +ADAPTER_GET_INTERFACE(Cache, PXENBUS_CACHE_INTERFACE) ADAPTER_GET_INTERFACE(Store, PXENBUS_STORE_INTERFACE) ADAPTER_GET_INTERFACE(Debug, PXENBUS_DEBUG_INTERFACE) ADAPTER_GET_INTERFACE(Evtchn, PXENBUS_EVTCHN_INTERFACE) diff --git a/src/xenvbd/adapter.h b/src/xenvbd/adapter.h index ce0c794..25febc1 100644 --- a/src/xenvbd/adapter.h +++ b/src/xenvbd/adapter.h @@ -36,6 +36,7 @@ typedef struct _XENVBD_ADAPTER XENVBD_ADAPTER, *PXENVBD_ADAPTER; +#include <cache_interface.h> #include <store_interface.h> #include <evtchn_interface.h> #include <gnttab_interface.h> @@ -51,6 +52,7 @@ AdapterGet ## _name ## Interface( \ OUT _type _name ## Interface \ ); +ADAPTER_GET_INTERFACE(Cache, PXENBUS_CACHE_INTERFACE) ADAPTER_GET_INTERFACE(Store, PXENBUS_STORE_INTERFACE) ADAPTER_GET_INTERFACE(Debug, PXENBUS_DEBUG_INTERFACE) ADAPTER_GET_INTERFACE(Evtchn, PXENBUS_EVTCHN_INTERFACE) -- 2.8.3 _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |