From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH] memslot check before deferencing Date: Mon, 04 Jun 2007 12:45:25 +0300 Message-ID: <4663DF35.4080005@qumranet.com> References: <9cde8bff0706031016r76fc236dga185be728f0e2f4e@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org To: Nguyen Anh Quynh Return-path: In-Reply-To: <9cde8bff0706031016r76fc236dga185be728f0e2f4e-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org Errors-To: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org List-Id: kvm.vger.kernel.org Nguyen Anh Quynh wrote: > "memslot" in makr_page_dirty() should be verified before dereferencing > it (kvm_main.c) The patches still don't show up inlined. This makes them hard to review. Please fix this. > diff --git a/kernel/kvm_main.c b/kernel/kvm_main.c > index 84f95e4..da596fb 100644 > --- a/kernel/kvm_main.c > +++ b/kernel/kvm_main.c > @@ -969,16 +969,16 @@ EXPORT_SYMBOL_GPL(gfn_to_page); > void mark_page_dirty(struct kvm *kvm, gfn_t gfn) > { > int i; > - struct kvm_memory_slot *memslot = NULL; > + struct kvm_memory_slot *memslot; > unsigned long rel_gfn; > > for (i = 0; i < kvm->nmemslots; ++i) { > memslot = &kvm->memslots[i]; > > - if (gfn >= memslot->base_gfn > + if (memslot && gfn >= memslot->base_gfn memslot can not be NULL here. > && gfn < memslot->base_gfn + memslot->npages) { > > - if (!memslot || !memslot->dirty_bitmap) this is odd. > + if (!memslot->dirty_bitmap) > return; > > rel_gfn = gfn - memslot->base_gfn; -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/