From patchwork Mon Sep 17 16:30:54 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Emilio Cota X-Patchwork-Id: 970709 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=braap.org Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=braap.org header.i=@braap.org header.b="a6ohTpCW"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="Vw4B0K3y"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42DX8l2G45z9sfR for ; Tue, 18 Sep 2018 02:47:03 +1000 (AEST) Received: from localhost ([::1]:36522 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g1wfs-0002Jm-S2 for incoming@patchwork.ozlabs.org; Mon, 17 Sep 2018 12:47:00 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41139) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g1wQo-0006Qv-Sr for qemu-devel@nongnu.org; Mon, 17 Sep 2018 12:31:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1g1wQl-0002BD-Q6 for qemu-devel@nongnu.org; Mon, 17 Sep 2018 12:31:26 -0400 Received: from wout2-smtp.messagingengine.com ([64.147.123.25]:46921) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1g1wQl-0001qh-Gt for qemu-devel@nongnu.org; Mon, 17 Sep 2018 12:31:23 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 7BCEB4F8; Mon, 17 Sep 2018 12:31:11 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Mon, 17 Sep 2018 12:31:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=braap.org; h=cc :date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=mesmtp; bh=XOPptgPDd8Ymni lD5H+LO1n6bKRL3qkzlwJGlcWrNEg=; b=a6ohTpCWY1dwfVcDWQbf/dA1nx1Ykm ZzmsmYMe19UcTTQ0lZgFAPOYuVyBUqig7LEMuOd5xNnaXlIxEzntFztC7jnKFtPD LJ53h3jwK89QFN0EEQmZHyucWXj+yyhl+fTn2eAb+Ck/zzTfdSVBI5R43NmrxuZR LXBOZv79zHWDY= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; bh=XOPptgPDd8YmnilD5H+LO1n6bKRL3qkzlwJGlcWrNEg=; b=Vw4B0K3y tPXGlFtfXPYg7xSnzSsEbzBPZ8AplvVGQQNpEvevBKslkCUAE3CbLrXiiZhd0YZE OVp+xzRLuGKKaatZ7zOPEN6+1vtKfhn7uiBgxXDkUM8gkJQ88huMjuGOMYZu7mNi QlVdRTr2bZ5VzN70z76l1cWIxWQYiP/NHvjl/JbageRjo+M9sLlA1ZnKmGQhOuP6 xzclWyU1srGueeaB5iqa19MP3L/ft8ipAd/pohHWjkJrP2CFUFutYmrRPvwCfxBt TtSUGmp2LDjkMf+Y7z3koZiFuSijOug17dLvnNd5wLBPIBjCAVoPaNjiu2c64GOD 4AiN2Ii/eeR96Q== X-ME-Proxy: X-ME-Sender: Received: from localhost (flamenco.cs.columbia.edu [128.59.20.216]) by mail.messagingengine.com (Postfix) with ESMTPA id AB86EE4121; Mon, 17 Sep 2018 12:31:10 -0400 (EDT) From: "Emilio G. Cota" To: qemu-devel@nongnu.org Date: Mon, 17 Sep 2018 12:30:54 -0400 Message-Id: <20180917163103.6113-27-cota@braap.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180917163103.6113-1-cota@braap.org> References: <20180917163103.6113-1-cota@braap.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 64.147.123.25 Subject: [Qemu-devel] [PATCH 26/35] target/unicore32: access cpu->interrupt_request with atomics X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , Guan Xuetao Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: Paolo Bonzini Cc: Guan Xuetao Signed-off-by: Paolo Bonzini Signed-off-by: Emilio G. Cota Reviewed-by: Philippe Mathieu-Daudé --- target/unicore32/cpu.c | 2 +- target/unicore32/softmmu.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/target/unicore32/cpu.c b/target/unicore32/cpu.c index 68f978d80b..4e4ee2ee78 100644 --- a/target/unicore32/cpu.c +++ b/target/unicore32/cpu.c @@ -29,7 +29,7 @@ static void uc32_cpu_set_pc(CPUState *cs, vaddr value) static bool uc32_cpu_has_work(CPUState *cs) { - return cs->interrupt_request & + return atomic_read(&cs->interrupt_request) & (CPU_INTERRUPT_HARD | CPU_INTERRUPT_EXITTB); } diff --git a/target/unicore32/softmmu.c b/target/unicore32/softmmu.c index 00c7e0d028..d84ef67d0d 100644 --- a/target/unicore32/softmmu.c +++ b/target/unicore32/softmmu.c @@ -119,7 +119,7 @@ void uc32_cpu_do_interrupt(CPUState *cs) /* The PC already points to the proper instruction. */ env->regs[30] = env->regs[31]; env->regs[31] = addr; - cs->interrupt_request |= CPU_INTERRUPT_EXITTB; + atomic_or(&cs->interrupt_request, CPU_INTERRUPT_EXITTB); } static int get_phys_addr_ucv2(CPUUniCore32State *env, uint32_t address,