From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferry Huberts Subject: Re: [PATCH] memory: transaction API Date: Thu, 21 Jul 2011 14:56:06 +0200 Message-ID: <4E2821E6.7080708@hupie.com> References: <1311243679-18403-1-git-send-email-avi@redhat.com> <4E2807A1.6000001@hupie.com> <4E281684.5000203@redhat.com> <4E281ADB.90708@hupie.com> <4E281FBA.3010500@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Jan Kiszka , qemu-devel@nongnu.org, kvm@vger.kernel.org To: Avi Kivity Return-path: Received: from 82-197-206-98.dsl.cambrium.nl ([82.197.206.98]:53605 "EHLO mail.hupie.dyndns.org" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751964Ab1GUM4K (ORCPT ); Thu, 21 Jul 2011 08:56:10 -0400 In-Reply-To: <4E281FBA.3010500@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 07/21/2011 02:46 PM, Avi Kivity wrote: > On 07/21/2011 03:26 PM, Ferry Huberts wrote: >> >> > +void memory_region_transaction_begin(void) >> >> > +{ >> >> > + ++memory_region_transaction_depth; >> >> > +} >> >> > + >> >> >> >> wouldn't you rather keep it safe by doing either here >> >> >> >> if (!memory_region_transaction_depth) >> >> memory_region_transaction_depth++; >> >> >> > >> > Why? I want to allow nesting transactions (not that I anticipate >> such a >> > case). >> > >> >> doesn't memory_region_update_topology commit all accumulated changes? > > It does. > >> if >> it does then memory_region_transaction_depth is left non-zero in the >> nesting case while no more changes are actually present, resulting in >> superfluous calls to memory_region_update_topology. >> >> maybe I misunderstood memory_region_update_topology? >> > > update_mapping() > { > m_r_t_begin(); > // call memory API functions to change hierarchy > some_other_function() entered > m_r_t_begin(); > // call more memory API functions to change hierarchy > m_r_t_commit(); // nothing happens > some_other_function() exits > // call even more memory API functions to change hierarchy > m_r_t_commit(); // all accumulated changes become visible > } > ahhh. I completely read over the memory_region_update_topology change. shame on me, sorry for the confusion! -- Ferry Huberts