From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: paging_domctl() missing break statements? Date: Wed, 23 Jun 2010 14:27:31 +0200 Message-ID: <4C21FDB3.8000402@redhat.com> References: <4B7BC96F020000780002FC9A@vpn.id2.novell.com> <20100217095806.GK368@whitby.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20100217095806.GK368@whitby.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Tim Deegan Cc: "xen-devel@lists.xensource.com" , 'Keir Fraser' , Jan Beulich List-Id: xen-devel@lists.xenproject.org On 02/17/2010 10:58 AM, Tim Deegan wrote: > At 09:48 +0000 on 17 Feb (1266400095), Jan Beulich wrote: >> The main switch statement in that function looks suspicious, and with no >> explicit comment saying that fall-through is intended it would seem like >> one or two break statements are actually missing. Comments? > > Yep, looks like that was just working by blind luck. > > Tim. > > diff -r 560277d2fd20 xen/arch/x86/mm/paging.c > --- a/xen/arch/x86/mm/paging.c Mon Feb 15 08:19:07 2010 +0000 > +++ b/xen/arch/x86/mm/paging.c Wed Feb 17 09:56:43 2010 +0000 > @@ -717,11 +717,13 @@ > hap_logdirty_init(d); > return paging_log_dirty_enable(d); > } > + break; > > case XEN_DOMCTL_SHADOW_OP_OFF: > if ( paging_mode_log_dirty(d) ) > if ( (rc = paging_log_dirty_disable(d)) != 0 ) > return rc; > + break; > > case XEN_DOMCTL_SHADOW_OP_CLEAN: > case XEN_DOMCTL_SHADOW_OP_PEEK: This was never applied. Paolo