lkml.org 
[lkml]   [2009]   [May]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH -tip] x86: kvm/paging_tmpl.h intialize the variable before using it
    From
    Date
    Hello Avi,

    On Sun, 2009-05-24 at 15:21 +0300, Avi Kivity wrote:
    > Jaswinder Singh Rajput wrote:
    > > May be in some cases paging64_fetch() and paging32_fetch() will return sptep
    > > without initialization.
    > >
    > > Also fixes compilation warning:
    > > CC arch/x86/kernel/io_delay.o
    > > arch/x86/kvm/paging_tmpl.h: In function ‘paging64_fetch’:
    > > arch/x86/kvm/paging_tmpl.h:279: warning: ‘sptep’ may be used uninitialized in this function
    > > arch/x86/kvm/paging_tmpl.h: In function ‘paging32_fetch’:
    > > arch/x86/kvm/paging_tmpl.h:279: warning: ‘sptep’ may be used uninitialized in this function
    > >
    > > Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
    > > ---
    > > arch/x86/kvm/paging_tmpl.h | 2 +-
    > > 1 files changed, 1 insertions(+), 1 deletions(-)
    > >
    > > diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
    > > index 6bd7020..99cb10d 100644
    > > --- a/arch/x86/kvm/paging_tmpl.h
    > > +++ b/arch/x86/kvm/paging_tmpl.h
    > > @@ -276,7 +276,7 @@ static u64 *FNAME(fetch)(struct kvm_vcpu *vcpu, gva_t addr,
    > > {
    > > unsigned access = gw->pt_access;
    > > struct kvm_mmu_page *shadow_page;
    > > - u64 spte, *sptep;
    > > + u64 spte, *sptep = NULL;
    > > int direct;
    > > gfn_t table_gfn;
    > > int r;
    > >
    >
    > It's a false alarm. Isn't there a macro to shut up the warning?
    >

    In arch/x86/kvm/paging_tmpl.h sptep is initialize only in :

    for_each_shadow_entry(vcpu, addr, iterator) {

    If we skip this, then we end up with wild sptep and returning it.

    Do you still think it is a false alarm ?

    --
    JSR


    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2009-05-25 07:21    [W:0.023 / U:161.508 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site