From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:51302) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZmaP-0002HH-UZ for qemu-devel@nongnu.org; Tue, 07 May 2013 14:26:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UZmaO-0006Mg-LB for qemu-devel@nongnu.org; Tue, 07 May 2013 14:26:01 -0400 Received: from goliath.siemens.de ([192.35.17.28]:17078) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZmaO-0006MO-1k for qemu-devel@nongnu.org; Tue, 07 May 2013 14:26:00 -0400 Message-ID: <518946A5.5080503@siemens.com> Date: Tue, 07 May 2013 20:23:33 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <29d07f201f1ae231f543e8884c0eb67278b105e1.1367849167.git.jan.kiszka@siemens.com> <5188F4FD.4000506@redhat.com> <51893933.4070508@siemens.com> In-Reply-To: <51893933.4070508@siemens.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC][PATCH 10/15] memory: Rework sub-page handling List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Peter Maydell , Liu Ping Fan , qemu-devel , =?UTF-8?B?QW5kcmVhcyBGw6RyYmU=?= =?UTF-8?B?cg==?= On 2013-05-07 19:26, Jan Kiszka wrote: > Well, the alternative is to handle a sub-page dispatch (ie. calling into > subpage_[ram_]read/write just like address_space_rw: take the necessary > lock that protect mapping changes, look into the sub-page and pick up > the target region, invoke memory_region_ref on it, perform the access > and unref the region again. Slow, but that's how sub-pages are. And it > only affects TCG. Hmm, or does your IOMMU core cache translations on a > per-page base as well? OK, there is no translation caching in the memory core. So I will preserve the dispatching functions of sub-pages, just like the term "sub-page" - along with a comment why we depend on page granularity. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux