//\r
MemoryFence ();\r
RxCurUsed = *Dev->RxRing.Used.Idx;\r
+ MemoryFence ();\r
\r
if (Dev->RxLastUsed == RxCurUsed) {\r
Status = EFI_NOT_READY;\r
CopyMem (Buffer, RxPtr, RxLen);\r
\r
if (DestAddr != NULL) {\r
- CopyMem (DestAddr, RxPtr, SIZE_OF_VNET (VhdrMac));\r
+ CopyMem (DestAddr, RxPtr, SIZE_OF_VNET (Mac));\r
}\r
- RxPtr += SIZE_OF_VNET (VhdrMac);\r
+ RxPtr += SIZE_OF_VNET (Mac);\r
\r
if (SrcAddr != NULL) {\r
- CopyMem (SrcAddr, RxPtr, SIZE_OF_VNET (VhdrMac));\r
+ CopyMem (SrcAddr, RxPtr, SIZE_OF_VNET (Mac));\r
}\r
- RxPtr += SIZE_OF_VNET (VhdrMac);\r
+ RxPtr += SIZE_OF_VNET (Mac);\r
\r
if (Protocol != NULL) {\r
*Protocol = (UINT16) ((RxPtr[0] << 8) | RxPtr[1]);\r
*Dev->RxRing.Avail.Idx = AvailIdx;\r
\r
MemoryFence ();\r
- NotifyStatus = VIRTIO_CFG_WRITE (Dev, Generic.VhdrQueueNotify,\r
- VIRTIO_NET_Q_RX);\r
-\r
+ NotifyStatus = Dev->VirtIo->SetQueueNotify (Dev->VirtIo, VIRTIO_NET_Q_RX);\r
if (!EFI_ERROR (Status)) { // earlier error takes precedence\r
Status = NotifyStatus;\r
}\r