From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51253) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQzEi-0002kY-Qh for qemu-devel@nongnu.org; Wed, 03 Feb 2016 10:20:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aQzEc-0002oe-Dg for qemu-devel@nongnu.org; Wed, 03 Feb 2016 10:20:52 -0500 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]:35135) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQzEc-0002oZ-2Y for qemu-devel@nongnu.org; Wed, 03 Feb 2016 10:20:46 -0500 References: <1454494453-20738-1-git-send-email-glaubitz@physik.fu-berlin.de> <1454494453-20738-2-git-send-email-glaubitz@physik.fu-berlin.de> <56B219E4.2070800@redhat.com> From: John Paul Adrian Glaubitz Message-ID: <56B21ACC.1020802@physik.fu-berlin.de> Date: Wed, 3 Feb 2016 16:20:44 +0100 MIME-Version: 1.0 In-Reply-To: <56B219E4.2070800@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] m68k: Build the opcode table only once to avoid multithreading issues List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eric Blake , qemu-devel@nongnu.org Cc: laurent@vivier.eu -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 02/03/2016 04:16 PM, Eric Blake wrote: > Missing {}. Are you sure this is the version that passed > checkpatch.pl? Yes: glaubitz@z6:..qemu/target-m68k> ../scripts/checkpatch.pl 0002-m68k-Build-the-opcode-table-only-once-to-avoid-multi.patch total: 0 errors, 0 warnings, 10 lines checked 0002-m68k-Build-the-opcode-table-only-once-to-avoid-multi.patch has no obvious style problems and is ready for submission. glaubitz@z6:..qemu/target-m68k> cat 0002-m68k-Build-the-opcode-table-only-once-to-avoid-multi.patch - From 2d8ef8d0244db95e41e04ff909560f12676e1dec Mon Sep 17 00:00:00 2001 From: John Paul Adrian Glaubitz Date: Wed, 3 Feb 2016 10:22:35 +0100 Subject: [PATCH 2/2] m68k: Build the opcode table only once to avoid multithreading issues Signed-off-by: John Paul Adrian Glaubitz - --- target-m68k/translate.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/target-m68k/translate.c b/target-m68k/translate.c index 535d7f9..a989961 100644 - --- a/target-m68k/translate.c +++ b/target-m68k/translate.c @@ -2828,6 +2828,10 @@ register_opcode (disas_proc proc, uint16_t opcode, uint16_t mask) Later insn override earlier ones. */ void register_m68k_insns (CPUM68KState *env) { + /* Build the opcode table only once to avoid + multithreading issues. */ + if (opcode_table[0] != NULL) + return; #define INSN(name, opcode, mask, feature) do { \ if (m68k_feature(env, M68K_FEATURE_##feature)) \ register_opcode(disas_##name, 0x##opcode, 0x##mask); \ - -- 2.7.0 glaubitz@z6:..qemu/target-m68k> - -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer - glaubitz@debian.org `. `' Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJWshrHAAoJEHQmOzf1tfkT9V0P/1cMCHys6vImaJZtGOzQyaf2 PgsAw0fpgaOuL6u8ypxVHo++7QRI4lbZMTBx5PPuZQsc1iRhN27bAcxIzsoDPDeg KVHx5Jc7JcvDNQiCTArOW1FVQeFFVYkQlAoTWzOqr+DYje8flU3OmKzbVoU+MXTN Vv7P5CQk90mSxYMLzaggM+BpPMtVGvhxuVy0wOQKnMgTyF0U0r/G+/PmUBcidwDv w7v7EcUSzzEXp6vZR6W0qBP6QBRqJyG3lrxWjZBl1K9lWfEv4gd4IQxWbf/A6P22 3GQjtEiiIEgppP1YFl0ah0VY/7uEtsx5sxo5vEOiWgaRm1Th8Y3rctFEyfT8Y73K da1ro7KLFqRSut2tzuQ+ebsTujLY+XTs0y5Sxg3K8LfuMIs6fjzPN0hpx+8Z0hjD 7wqXoINLxIuCPz66cLkVFdtJTl7Z2uXGwGplel7wGTgLaIJHY8ZlOowmwELivVTh ZhoVM3vaF3bHAx5g5CgsJ3X9EaJoxu268hJoMLwaOVte8lgOr48acGZPWPrMwdHp hi9lJtnKzfMN09WFmYWiAeB0sx6TpniK48o2URwLX+UVMnkQz2qIEjFeAfmz//IR vRQtLGqZg1Cjw76TpIPVd7hJPeklZXqt1rd4NoWn3CML0xIlWOYGSBNi7CTboPyr MyBXXeWItvj6kwO4pm7f =L8Yn -----END PGP SIGNATURE-----