From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44305) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1asnk2-0002ia-17 for qemu-devel@nongnu.org; Wed, 20 Apr 2016 04:44:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1asnjx-0003I7-E5 for qemu-devel@nongnu.org; Wed, 20 Apr 2016 04:44:09 -0400 Received: from mail-wm0-x22f.google.com ([2a00:1450:400c:c09::22f]:36821) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1asnjw-0003HY-Mv for qemu-devel@nongnu.org; Wed, 20 Apr 2016 04:44:05 -0400 Received: by mail-wm0-x22f.google.com with SMTP id v188so193572224wme.1 for ; Wed, 20 Apr 2016 01:44:04 -0700 (PDT) References: <1460044433-19282-1-git-send-email-sergey.fedorov@linaro.org> From: Alex =?utf-8?Q?Benn=C3=A9e?= In-reply-to: <1460044433-19282-1-git-send-email-sergey.fedorov@linaro.org> Date: Wed, 20 Apr 2016 09:44:02 +0100 Message-ID: <87vb3cvfe5.fsf@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH 00/11] tcg: Make direct jump patching thread-safe List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Sergey Fedorov Cc: qemu-devel@nongnu.org, Sergey Fedorov , Paolo Bonzini , Peter Crosthwaite , Richard Henderson Sergey Fedorov writes: > From: Sergey Fedorov > > When patching translated code for direct block chaining/unchaining, > modification of concurrently executing code can happen in multi-threaded > execution. Currently only user-mode is affected. To make direct block patching > safe, some care must be taken to make sure that the code modification is made > atomic and concurrently executed code is guaranteed to be consistent. > > This patch series fixes all supported TCG targets using direct patching and > documents the requirement for direct jump patching be atomic and thread-safe. > > The series' tree can be found in a public git repository [1]. > > [1] https://github.com/sergefdrv/qemu/tree/atomic-tb-patching So I already know this will need a re-base as the patches don't apply cleanly to the current master. The git tree re-based without issue so I guess that is just git am being a bit crap. > > Sergey Fedorov (10): > pc-bios/s390-ccw: Use correct strip when cross-compiling > tci: Make direct jump patching thread-safe > tcg/ppc: Make direct jump patching thread-safe > tcg/i386: Make direct jump patching thread-safe > tcg/s390: Make direct jump patching thread-safe > tcg/arm: Make direct jump patching thread-safe > tcg/aarch64: Make direct jump patching thread-safe > tcg/sparc: Make direct jump patching thread-safe > tcg/mips: Make direct jump patching thread-safe > tcg: Note requirement on atomic direct jump patching > > Stefan Weil (1): > tci: Fix build regression > > include/exec/exec-all.h | 32 ++++++------------------------ > pc-bios/s390-ccw/Makefile | 2 +- > tcg/aarch64/tcg-target.inc.c | 14 +++++++++++++- > tcg/arm/tcg-target.inc.c | 17 ++++++++++++++++ > tcg/i386/tcg-target.inc.c | 17 ++++++++++++++++ > tcg/mips/tcg-target.inc.c | 3 ++- > tcg/ppc/tcg-target.inc.c | 22 +++++++++++++++++---- > tcg/s390/tcg-target.inc.c | 6 ++++++ > tcg/sparc/tcg-target.inc.c | 2 +- > tcg/tci/tcg-target.inc.c | 2 ++ > tci.c | 46 +++++++++++++++++++++++++------------------- > translate-all.c | 2 ++ > 12 files changed, 111 insertions(+), 54 deletions(-) -- Alex Bennée