Yep, it appears to be a bug in Xenvif which
has not been noticed before:
static FORCEINLINE VOID
__TransmitterRingUnmask(
IN PXENVIF_TRANSMITTER_RING
Ring
)
{
PXENVIF_TRANSMITTER Transmitter;
if (!Ring->Connected)
return;
Transmitter = Ring->Transmitter;
XENBUS_EVTCHN(Unmask,
&Transmitter->EvtchnInterface,
Ring->Channel,
FALSE);
}
In the above there should be a check for
FrontendIsSplit() being true before attempting the Unmask op.
Thanks for reporting this. I will post
a fix shortly.
Paul
From:
Paul Durrant
Sent: 06 May 2016 09:17
To: 'Eytan Heidingsfeld'; win-pv-devel@xxxxxxxxxxxxxxxxxxxx
Subject: RE: [win-pv-devel] Using current xen pv drivers (Windows) on AWS
At a guess, I’d say that the backend doesn’t support split event channels and the frontend is not checking this
before attempting to unmask a presumably non-existent evtchn?
Did you build the drivers yourself? If so, from what branch and when?
Paul
Hello,
I'm trying to use the most up-to-date xen drivers on AWS ec2.
If using enhanced-networking everything works as planned, but trying to use xenvif/xennet causes a bugcheck
the stack is:
04 fffff801`99a28524 : 00000000`00000000 fffff802`e657b830 ffffe001`9a5551c8 ffffe001`9a553000 : xenbus!EvtchnUnmask+0x35 [c:\users\builder\documents\pvdrivers\xenbus\src\xenbus\evtchn.c
@ 756]
05 (Inline Function) : --------`-------- --------`-------- --------`-------- --------`-------- : xenvif!__TransmitterRingUnmask+0x1f
06 fffff802`e4ccc130 : fffff802`e4f71f00 fffff802`e4dbd53e fffff802`e657bb10 ffffe001`9a553080 : xenvif!TransmitterRingDpc+0x2e4 [c:\users\builder\documents\pvdrivers\xenvif\src\xenvif\transmitter.c
@ 3009]
Any idea why this is? Anyone else have this configuration working?
Thanks in advance,