Re: [PATCH] mm/migrate: check for null vma before dereferencing it

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 11 Apr 2017 22:31:12 +0100 Colin Ian King <colin.king@xxxxxxxxxxxxx> wrote:

> On 11/04/17 22:26, Andrew Morton wrote:
> > On Tue, 11 Apr 2017 13:51:02 +0100 Colin King <colin.king@xxxxxxxxxxxxx> wrote:
> > 
> >> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> >>
> >> check if vma is null before dereferencing it, this avoiding any
> >> potential null pointer dereferences on vma via the is_vm_hugetlb_page
> >> call or the direct vma->vm_flags reference.
> >>
> >> Detected with CoverityScan, CID#1427995 ("Dereference before null check")
> >>
> >> ...
> >>
> >> --- a/mm/migrate.c
> >> +++ b/mm/migrate.c
> >> @@ -2757,10 +2757,10 @@ int migrate_vma(const struct migrate_vma_ops *ops,
> >>  	/* Sanity check the arguments */
> >>  	start &= PAGE_MASK;
> >>  	end &= PAGE_MASK;
> >> -	if (is_vm_hugetlb_page(vma) || (vma->vm_flags & VM_SPECIAL))
> >> -		return -EINVAL;
> >>  	if (!vma || !ops || !src || !dst || start >= end)
> >>  		return -EINVAL;
> >> +	if (is_vm_hugetlb_page(vma) || (vma->vm_flags & VM_SPECIAL))
> >> +		return -EINVAL;
> >>  	if (start < vma->vm_start || start >= vma->vm_end)
> >>  		return -EINVAL;
> >>  	if (end <= vma->vm_start || end > vma->vm_end)
> > 
> > I don't know what kernel version this is against but I don't think it's
> > anything recent?
> 
> I should have said it was against linux-next

ah, it modifies an HMM patch which I dropped a couple of hours ago.  One
for Jerome, please.
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux