From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Brook Subject: Re: [Qemu-devel] [PATCH 00/21] Kemari for KVM 0.2 Date: Sat, 27 Nov 2010 11:20:51 +0000 Message-ID: <201011271120.51787.paul@codesourcery.com> References: <1290665220-26478-1-git-send-email-tamura.yoshiaki@lab.ntt.co.jp> Mime-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Cc: Stefan Hajnoczi , Yoshiaki Tamura , ohmura.kei@lab.ntt.co.jp, mtosatti@redhat.com, stefanha@linux.vnet.ibm.com, kvm@vger.kernel.org, dlaor@redhat.com, aliguori@us.ibm.com, Blue Swirl , avi@redhat.com, vatsa@linux.vnet.ibm.com, psuriset@linux.vnet.ibm.com, ananth@in.ibm.com To: qemu-devel@nongnu.org Return-path: Received: from mail.codesourcery.com ([38.113.113.100]:40926 "EHLO mail.codesourcery.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750991Ab0K0LVG (ORCPT ); Sat, 27 Nov 2010 06:21:06 -0500 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: > One question I have about Kemari is whether it adds new constraints to > the QEMU codebase? Fault tolerance seems like a cross-cutting concern > - everyone writing device emulation or core QEMU code may need to be > aware of new constraints. For example, "you are not allowed to > release I/O operations to the outside world directly, instead you need > to go through Kemari code which makes I/O transactional and > communicates with the passive host". You have converted e1000, > virtio-net, and virtio-blk. How do we make sure new devices that are > merged into qemu.git don't break Kemari? How do we go about > supporting the existing hw/* devices? IMO anything that requires devices to act differently is wrong. All external IO already goes though a common API (e.g. qemu_send_packet). You should be putting your transaction code there, not hacking individual devices. Paul From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=46732 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PMIq3-0005jz-Oy for qemu-devel@nongnu.org; Sat, 27 Nov 2010 06:21:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PMIq2-0002X4-Q5 for qemu-devel@nongnu.org; Sat, 27 Nov 2010 06:21:07 -0500 Received: from mail.codesourcery.com ([38.113.113.100]:33248) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PMIq2-0002Wi-Gn for qemu-devel@nongnu.org; Sat, 27 Nov 2010 06:21:06 -0500 From: Paul Brook Subject: Re: [Qemu-devel] [PATCH 00/21] Kemari for KVM 0.2 Date: Sat, 27 Nov 2010 11:20:51 +0000 References: <1290665220-26478-1-git-send-email-tamura.yoshiaki@lab.ntt.co.jp> In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201011271120.51787.paul@codesourcery.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: ohmura.kei@lab.ntt.co.jp, dlaor@redhat.com, stefanha@linux.vnet.ibm.com, kvm@vger.kernel.org, Stefan Hajnoczi , mtosatti@redhat.com, Yoshiaki Tamura , vatsa@linux.vnet.ibm.com, Blue Swirl , aliguori@us.ibm.com, ananth@in.ibm.com, psuriset@linux.vnet.ibm.com, avi@redhat.com > One question I have about Kemari is whether it adds new constraints to > the QEMU codebase? Fault tolerance seems like a cross-cutting concern > - everyone writing device emulation or core QEMU code may need to be > aware of new constraints. For example, "you are not allowed to > release I/O operations to the outside world directly, instead you need > to go through Kemari code which makes I/O transactional and > communicates with the passive host". You have converted e1000, > virtio-net, and virtio-blk. How do we make sure new devices that are > merged into qemu.git don't break Kemari? How do we go about > supporting the existing hw/* devices? IMO anything that requires devices to act differently is wrong. All external IO already goes though a common API (e.g. qemu_send_packet). You should be putting your transaction code there, not hacking individual devices. Paul