On Mon, 20 Aug 2012, Mel Gorman wrote: > diff --git a/mm/mempolicy.c b/mm/mempolicy.c > index 45f9825..82e872f 100644 > --- a/mm/mempolicy.c > +++ b/mm/mempolicy.c > @@ -1545,15 +1545,28 @@ struct mempolicy *get_vma_policy(struct task_struct *task, > struct vm_area_struct *vma, unsigned long addr) > { > struct mempolicy *pol = task->mempolicy; > + int got_ref; New variable. Need to set it to zero? > > if (vma) { > if (vma->vm_ops && vma->vm_ops->get_policy) { > struct mempolicy *vpol = vma->vm_ops->get_policy(vma, > addr); > - if (vpol) > + if (vpol) { > pol = vpol; > - } else if (vma->vm_policy) > + got_ref = 1; Set the new variable. But it was not initialzed before. So now its 1 or undefined? > + } > + } else if (vma->vm_policy) { > pol = vma->vm_policy; > + > + /* > + * shmem_alloc_page() passes MPOL_F_SHARED policy with > + * a pseudo vma whose vma->vm_ops=NULL. Take a reference > + * count on these policies which will be dropped by > + * mpol_cond_put() later > + */ > + if (mpol_needs_cond_ref(pol)) > + mpol_get(pol); > + } > } > if (!pol) > pol = &default_policy; > I do not see any use of got_ref. Can we get rid of the variable? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>