Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753335AbaFEEVv (ORCPT ); Thu, 5 Jun 2014 00:21:51 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:44313 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753256AbaFEEVr (ORCPT ); Thu, 5 Jun 2014 00:21:47 -0400 From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jason Wang , Haiyang Zhang , "K. Y. Srinivasan" , Ben Hutchings , Qiang Huang Subject: [PATCH 3.4 157/214] drivers: hv: switch to use mb() instead of smp_mb() Date: Wed, 4 Jun 2014 21:18:40 -0700 Message-Id: <20140605041700.843793410@linuxfoundation.org> X-Mailer: git-send-email 2.0.0 In-Reply-To: <20140605041639.638675216@linuxfoundation.org> References: <20140605041639.638675216@linuxfoundation.org> User-Agent: quilt/0.60-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 3.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Jason Wang commit 35848f68b07df3f917cb13fc3c134718669f569b upstream. Even if guest were compiled without SMP support, it could not assume that host wasn't. So switch to use mb() instead of smp_mb() to force memory barriers for UP guest. Signed-off-by: Jason Wang Cc: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman [bwh: Backported to 3.2: - Drop changes to functions that don't exist here - hv_ringbuffer_write() has only a write memory barrier] Signed-off-by: Ben Hutchings [hq: Backported to 3.4: - Add the change in hv_ringbuffer_read] Signed-off-by: Qiang Huang Signed-off-by: Greg Kroah-Hartman --- drivers/hv/ring_buffer.c | 4 ++-- drivers/hv/vmbus_drv.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) --- a/drivers/hv/ring_buffer.c +++ b/drivers/hv/ring_buffer.c @@ -383,7 +383,7 @@ int hv_ringbuffer_write(struct hv_ring_b sizeof(u64)); /* Make sure we flush all writes before updating the writeIndex */ - smp_wmb(); + wmb(); /* Now, update the write location */ hv_set_next_write_location(outring_info, next_write_location); @@ -485,7 +485,7 @@ int hv_ringbuffer_read(struct hv_ring_bu /* 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 */ - smp_mb(); + mb(); /* Update the read index */ hv_set_next_read_location(inring_info, next_read_location); --- a/drivers/hv/vmbus_drv.c +++ b/drivers/hv/vmbus_drv.c @@ -466,7 +466,7 @@ static void vmbus_on_msg_dpc(unsigned lo * will not deliver any more messages since there is * no empty slot */ - smp_mb(); + mb(); if (msg->header.message_flags.msg_pending) { /* -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/