[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 3/5] Log waits for backend state changes.
In addition to preceding changes to ring disconnects, and associated logging, we also add some logging to check whether state change notifications are being sent in a timely manner between frontend and backend. Also a great assistance to customer debugging. Signed-off-by: Martin Harvey <martin.harvey@xxxxxxxxxx> --- src/xenvif/frontend.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c index 5940e16..72f448d 100644 --- a/src/xenvif/frontend.c +++ b/src/xenvif/frontend.c @@ -1346,6 +1346,7 @@ FrontendWaitForBackendXenbusStateChange( LARGE_INTEGER Timeout; XenbusState Old = *State; NTSTATUS status; + const ULONGLONG TotalTimeout = 120000; Trace("%s: ====> %s\n", __FrontendGetBackendPath(Frontend), @@ -1369,7 +1370,7 @@ FrontendWaitForBackendXenbusStateChange( Timeout.QuadPart = 0; - while (*State == Old && TimeDelta < 120000) { + while (*State == Old && TimeDelta < TotalTimeout) { PCHAR Buffer; LARGE_INTEGER Now; @@ -1417,6 +1418,9 @@ FrontendWaitForBackendXenbusStateChange( TimeDelta = (Now.QuadPart - Start.QuadPart) / 10000ull; } + if (TimeDelta >= TotalTimeout) + Error("%s timed out waiting for backend state change\n", __FrontendGetBackendPath(Frontend)); + if (Watch != NULL) (VOID) XENBUS_STORE(WatchRemove, &Frontend->StoreInterface, -- 2.25.0.windows.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |