From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37465) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YNKkc-0001IR-4P for qemu-devel@nongnu.org; Mon, 16 Feb 2015 07:26:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YNKkY-0006s5-TG for qemu-devel@nongnu.org; Mon, 16 Feb 2015 07:26:10 -0500 Received: from mail.ispras.ru ([83.149.199.45]:60939) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YNKkY-0006qk-MB for qemu-devel@nongnu.org; Mon, 16 Feb 2015 07:26:06 -0500 From: "Pavel Dovgaluk" References: <20150122085127.5276.53895.stgit@PASHA-ISP.def.inno> <20150122085215.5276.8878.stgit@PASHA-ISP.def.inno> <54C9FE31.4090404@redhat.com> <001801d03ee3$c8cb7660$5a626320$@Dovgaluk@ispras.ru> <54CF6FA9.7090600@redhat.com> <28583.7738695138$1422880978@news.gmane.org> <54CF793D.6070404@redhat.com> In-Reply-To: <54CF793D.6070404@redhat.com> Date: Mon, 16 Feb 2015 15:26:04 +0300 Message-ID: <000f01d049e3$bbc4dff0$334e9fd0$@Dovgaluk@ispras.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Language: ru Subject: Re: [Qemu-devel] [RFC PATCH v8 08/21] cpu: replay instructions sequence List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: 'Paolo Bonzini' , qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, peter.crosthwaite@xilinx.com, mark.burton@greensocs.com, real@ispras.ru, batuzovk@ispras.ru, maria.klimushenkova@ispras.ru, alex.bennee@linaro.org, afaerber@suse.de, fred.konrad@greensocs.com > From: Paolo Bonzini [mailto:paolo.bonzini@gmail.com] On Behalf Of Paolo Bonzini > On 02/02/2015 13:42, Pavel Dovgaluk wrote: > >> From: Paolo Bonzini [mailto:pbonzini@redhat.com] > >> On 02/02/2015 13:28, Pavel Dovgaluk wrote: > >>>>>>> cpu->exception_index = EXCP_INTERRUPT; > >>>>>>> next_tb = 0; > >>>>>>> + qemu_notify_event(); > >>>>> > >>>>> Why is this needed? > >>> It is needed to wake up iothread in replay mode. > >>> Otherwise it waits for additional time and replay becomes too slow. > >> > >> What event (something from a timerlist?) is ready, that has not been > >> notified to the iothread yet? qemu_notify_event() should never be > >> needed in common case. It's probably missing somewhere else. > > > > I think in this case there are no events at all - just reading timers values > > that were made while recording. > > We have to replay these reads by waking iothread. > > I think the right place for this is in replay_read_next_clock then. It doesn't fit. Log file is not read until all instructions are executed. And the next read from the file should be performed by iothread which should be notified and waked up. Pavel Dovgalyuk