On Mon, Jul 09, 2012 at 09:46:39AM -0500, Nathan Zimmer wrote:
> +static unsigned long shmem_interleave(struct vm_area_struct *vma,
> +                                     unsigned long addr)
> +{
> +     unsigned long offset;
> +
> +     /* Use the vm_files prefered node as the initial offset. */
> +     offset = (unsigned long *) vma->vm_private_data;

Should this be?:
        offset = (unsigned long)vma->vm_private_data;

offset is an unsigned long, not a pointer.  ->vm_private_data is a
void pointer.

It causes a GCC warning:
mm/shmem.c: In function ‘shmem_interleave’:
mm/shmem.c:1341:9: warning: assignment makes integer from pointer without a 
cast [enabled by default]

> +
> +     offset += ((addr - vma->vm_start) >> PAGE_SHIFT) + vma->vm_pgoff;
> +
> +     return offset;
> +}
>  #endif

regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
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