Avi Kivity wrote: > On 01/13/2010 11:32 AM, Andrew Morton wrote: >> On Wed, 13 Jan 2010 11:22:39 +0200 Avi Kivity<avi@xxxxxxxxxx> wrote: >> >> >>> On 01/13/2010 12:11 AM, akpm@xxxxxxxxxxxxxxxxxxxx wrote: >>> >>>> Subject: kvm/ia64: dereference of NULL pointer in set_pal_result() >>>> From: Roel Kluin<roel.kluin@xxxxxxxxx> >>>> >>>> Do not dereference a NULL pointer >>>> >>>> diff -puN >>>> arch/ia64/kvm/kvm_fw.c~kvm-ia64-dereference-of-null-pointer-in-set_pal_result >>>> arch/ia64/kvm/kvm_fw.c --- >>>> a/arch/ia64/kvm/kvm_fw.c~kvm-ia64-dereference-of-null-pointer-in-set_pal_result >>>> +++ a/arch/ia64/kvm/kvm_fw.c @@ -75,9 +75,11 @@ static void >>>> set_pal_result(struct kvm_vc struct exit_ctl_data *p; >>>> >>>> p = kvm_get_exit_data(vcpu); >>>> - if (p&& p->exit_reason == EXIT_REASON_PAL_CALL) { + if (!p) >>>> + return; >>>> + if (p->exit_reason == EXIT_REASON_PAL_CALL) { >>>> p->u.pal_data.ret = result; >>>> - return ; >>>> + return; >>>> } >>>> INIT_PAL_STATUS_UNIMPLEMENTED(p->u.pal_data.ret); } >>>> >>>> >>> >>> kvm_get_exit_data() cannot return a NULL pointer. >>> >> In that case set_pal_result() doesn't need to test for that. >> >> Roel looks for code along the lines of >> >> if (p) >> ... >> >> *p; >> > > I see. I think it's worthwhile to look deeper rather than converting > things mechanically. After all, the code may have actually worked > before the patch. Originally, we want to dynamically allocate the exit_data, so needs the check. But now, it is allocated statically, so the check is unnecessary. Xiantao -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html