From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43061) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z8WbY-00028U-5C for qemu-devel@nongnu.org; Fri, 26 Jun 2015 12:35:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z8WbS-0004ME-Td for qemu-devel@nongnu.org; Fri, 26 Jun 2015 12:35:51 -0400 Received: from greensocs.com ([193.104.36.180]:36236) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z8WbS-0004M8-LQ for qemu-devel@nongnu.org; Fri, 26 Jun 2015 12:35:46 -0400 Message-ID: <558D7F5E.1090501@greensocs.com> Date: Fri, 26 Jun 2015 18:35:42 +0200 From: Frederic Konrad MIME-Version: 1.0 References: <1435330053-18733-1-git-send-email-fred.konrad@greensocs.com> <1435330053-18733-16-git-send-email-fred.konrad@greensocs.com> <558D6C7E.6020905@redhat.com> <558D75D0.6060906@greensocs.com> <558D776E.20705@redhat.com> <558D7E11.80807@greensocs.com> <558D7E56.5060306@redhat.com> In-Reply-To: <558D7E56.5060306@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC PATCH V6 15/18] cpu: introduce tlb_flush*_all. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini , Peter Maydell Cc: mttcg@greensocs.com, Alexander Graf , Alexander Spyridakis , Mark Burton , QEMU Developers , Alistair Francis , Guillaume Delbergue , =?UTF-8?B?QWxleCBCZW5uw6ll?= On 26/06/2015 18:31, Paolo Bonzini wrote: > > On 26/06/2015 18:30, Frederic Konrad wrote: >> Yes this is not the case as I implemented it. >> >> The rest of the TB will be executed before the tlb_flush work really >> happen. The old version did this, was slow and was a mess (if two >> VCPUs want to tlb_flush at the same time and an other >> tlb_flush_page.. it becomes tricky..) > Have you tried implementing the solution based on cpu->halted? You mean based on cpu_has_work? Yes it was a little painfull (eg: it required cpu to be halted.. but maybe it's what you were suggesting?) >> I think it's not really terrible if the other VCPU execute some >> stuff before doing the tlb_flush.? So the solution would be only to >> cut the TranslationBlock after instruction which require a >> tlb_flush? > Yes, this is required too. > > Paolo