Use the "real" mb call instead of a wrapper function.
Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
sizeof(u64));
// Make sure we flush all writes before updating the writeIndex
- MemoryFence();
+ mb();
// Now, update the write location
SetNextWriteLocation(OutRingInfo, nextWriteLocation);
// Make sure all reads are done before we update the read index since
// the writer may start writing to the read area once the read index is updated
- MemoryFence();
+ mb();
// Update the read index
SetNextReadLocation(InRingInfo, nextReadLocation);
// Make sure the write to MessageType (ie set to HvMessageTypeNone) happens
// before we read the MessagePending and EOMing. Otherwise, the EOMing will not deliver
// any more messages since there is no empty slot
- MemoryFence();
+ mb();
if (msg->Header.MessageFlags.MessagePending)
{
extern void* MemMapIO(unsigned long phys, unsigned long size);
extern void MemUnmapIO(void* virt);
-extern void MemoryFence(void);
-
extern HANDLE TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context);
extern void TimerClose(HANDLE hTimer);
extern int TimerStop(HANDLE hTimer);
//iounmap(virt);
}
-void MemoryFence()
-{
- mb();
-}
-
void TimerCallback(unsigned long data)
{
TIMER* t = (TIMER*)data;