Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Apr 2016 05:31:22 +0000 (UTC)
From:      Sepherosa Ziehau <sephe@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r297634 - head/sys/dev/hyperv/vmbus
Message-ID:  <201604070531.u375VMS9041113@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sephe
Date: Thu Apr  7 05:31:22 2016
New Revision: 297634
URL: https://svnweb.freebsd.org/changeset/base/297634

Log:
  hyperv: Use mb() instead of atomic_thread_fence_seq_cst()
  
  Since atomic_thread_fence_seq_cst() will become compiler fence on UP kernel.
  
  Reviewed by:	kib, Dexuan Cui <decui microsoft com>
  MFC after:	1 week
  Sponsored by:	Microsoft OSTC
  Differential Revision:	https://reviews.freebsd.org/D5852

Modified:
  head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c

Modified: head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c
==============================================================================
--- head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c	Thu Apr  7 04:23:25 2016	(r297633)
+++ head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c	Thu Apr  7 05:31:22 2016	(r297634)
@@ -117,8 +117,12 @@ handled:
 	     * message_pending and EOMing. Otherwise, the EOMing will
 	     * not deliver any more messages
 	     * since there is no empty slot
+	     *
+	     * NOTE:
+	     * mb() is used here, since atomic_thread_fence_seq_cst()
+	     * will become compler fence on UP kernel.
 	     */
-	    atomic_thread_fence_seq_cst();
+	    mb();
 
 	    if (msg->header.message_flags.u.message_pending) {
 			/*
@@ -190,8 +194,12 @@ hv_vmbus_isr(struct trapframe *frame)
 		 * message_pending and EOMing. Otherwise, the EOMing will
 		 * not deliver any more messages
 		 * since there is no empty slot
+		 *
+		 * NOTE:
+		 * mb() is used here, since atomic_thread_fence_seq_cst()
+		 * will become compler fence on UP kernel.
 		 */
-		atomic_thread_fence_seq_cst();
+		mb();
 
 		if (msg->header.message_flags.u.message_pending) {
 			/*



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201604070531.u375VMS9041113>