c
static bool is_vma_invalid(struct vm_area_struct *vma, unsigned long addr, unsigned long end)
{
    return vma && (addr != vma->vm_start || end > vma->vm_end);
}

// In the main function:
VM_WARN_ON(is_vma_invalid(curr, addr, end));
