[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH] Skip interface checks on non-active FDO
If the non-active FDO powers down before the active one then we end up with the BUG_ONs firing erroneously. Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx> --- src/xenbus/fdo.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/xenbus/fdo.c b/src/xenbus/fdo.c index e889871..00801c9 100644 --- a/src/xenbus/fdo.c +++ b/src/xenbus/fdo.c @@ -3206,6 +3206,9 @@ FdoS3ToS4( ASSERT3U(KeGetCurrentIrql(), ==, PASSIVE_LEVEL); ASSERT3U(__FdoGetSystemPowerState(Fdo), ==, PowerSystemSleeping3); + if (!__FdoIsActive(Fdo)) + goto not_active; + BUG_ON(SuspendGetReferences(Fdo->SuspendContext) != 0); BUG_ON(SharedInfoGetReferences(Fdo->SharedInfoContext) != 0); BUG_ON(EvtchnGetReferences(Fdo->EvtchnContext) != 0); @@ -3217,6 +3220,7 @@ FdoS3ToS4( BUG_ON(UnplugGetReferences(Fdo->UnplugContext) != 0); BUG_ON(BalloonGetReferences(Fdo->BalloonContext) != 0); +not_active: __FdoSetSystemPowerState(Fdo, PowerSystemHibernate); Trace("<====\n"); -- 2.1.1 _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |