From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59013) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YH98u-0000nC-Rk for qemu-devel@nongnu.org; Fri, 30 Jan 2015 05:49:41 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YH98p-0002Mk-TJ for qemu-devel@nongnu.org; Fri, 30 Jan 2015 05:49:40 -0500 Received: from mx1.redhat.com ([209.132.183.28]:57783) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YH98p-0002MZ-M5 for qemu-devel@nongnu.org; Fri, 30 Jan 2015 05:49:35 -0500 Message-ID: <54CB61B1.8060507@redhat.com> Date: Fri, 30 Jan 2015 11:49:21 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <20150122085127.5276.53895.stgit@PASHA-ISP.def.inno> <20150122085300.5276.19453.stgit@PASHA-ISP.def.inno> In-Reply-To: <20150122085300.5276.19453.stgit@PASHA-ISP.def.inno> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC PATCH v8 16/21] replay: bottom halves List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Pavel Dovgalyuk , qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, peter.crosthwaite@xilinx.com, alex.bennee@linaro.org, mark.burton@greensocs.com, real@ispras.ru, batuzovk@ispras.ru, maria.klimushenkova@ispras.ru, afaerber@suse.de, fred.konrad@greensocs.com On 22/01/2015 09:53, Pavel Dovgalyuk wrote: > This patch introduces bottom half event for replay queue. It saves the events > into the queue and process them at the checkpoints and instructions execution. Which bottom halves must _not_ go through aio/qemu_bh_new_replay? > +QEMUBH *aio_bh_new_replay(AioContext *ctx, QEMUBHFunc *cb, void *opaque, > + uint64_t id) id is superfluous, it can always be replay_get_current_step(). It seems to me that the device models can always use qemu_bh_new_replay. There are few if any uses of qemu_bh_new outside device models. Perhaps convert those to aio_bh_new, and make qemu_bh_new always do special replay treatment? > +{ > + QEMUBH *bh = aio_bh_new(ctx, cb, opaque); > + bh->replay = true; > + bh->id = id; > + return bh; > +} Paolo