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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to