vma_prev
prev = vma_prev(&vmi);
prev = vma_prev(&vmi);
prev = vma_prev(&vmi);
prev = vma_prev(&vmi);
vma = vma_prev(&vmi);
*pprev = vma_prev(&vmi);
prev = vma_prev(&vmi);
struct vm_area_struct *prev = vma_prev(&vmi);
prev = vma_prev(&vmi);
struct vm_area_struct *prev = vma_prev(&vmi);
vma_prev(vmg->vmi);
vms->prev = vma_prev(vms->vmi);
prev = vma_prev(&vmi);
prev = vma_prev(&vmi);
tmp = vma_prev(&vmi);
tmp = vma_prev(&vmi);
prev = vma_prev(&vmi);
vma_prev(vmi);
vma_prev(vmg->vmi);
struct vm_area_struct *prev = vma_prev(vmi);
vma_prev(&vmi);
*pprev = vma_prev(&vmi);
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, prev_flags);
struct vm_area_struct *vma, *vma_prev, *vma_next;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
vma_set_dummy_anon_vma(vma_prev, &dummy_anon_vma_chain_1);
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x7000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
ASSERT_TRUE(vma_write_started(vma_prev));
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
vma_set_dummy_anon_vma(vma_prev, &dummy_anon_vma_chain_1);
ASSERT_EQ(merge_new(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x7000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
ASSERT_TRUE(vma_write_started(vma_prev));
struct vm_area_struct *vma_prev, *vma_next, *vma;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.target = vma_prev;
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_prev->anon_vma->was_cloned);
vmg->prev = vma_prev(vmg->vmi);
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x8000);
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_prev->anon_vma->was_cloned);
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x8000);
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_prev->anon_vma->was_cloned);
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x5000);
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_prev->anon_vma->was_cloned);
struct vm_area_struct *vma_prev, *vma;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.target = vma_prev;
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
struct vm_area_struct *vma_prev, *vma;
vma_prev = alloc_and_link_vma(&mm, 0x3000, 0x5000, 3, vm_flags);
vmg.prev = vma_prev;
ASSERT_EQ(vma, vma_prev);
struct vm_area_struct *vma_prev, *vma_next, *vma;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
ASSERT_EQ(merge_new(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x5000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, vm_flags);
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x5000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
struct vm_area_struct *vma_prev = alloc_and_link_vma(&mm, 0, 0x2000, 0, vm_flags);
vma_prev->vm_ops = &vm_ops;
struct vm_area_struct *vma, *vma_prev, *vma_next;
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, prev_flags);
vma_prev->vm_ops = &vm_ops; /* This should have no impact. */
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x6000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_write_started(vma_prev));
ASSERT_TRUE(IS_SET(vma_prev->vm_flags, VM_STICKY));
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, prev_flags);
vma_prev->vm_ops = &vm_ops; /* This should have no impact. */
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x7000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_write_started(vma_prev));
ASSERT_TRUE(IS_SET(vma_prev->vm_flags, VM_STICKY));
vma_prev = alloc_and_link_vma(&mm, 0, 0x3000, 0, prev_flags);
vma_prev->vm_ops = &vm_ops; /* This should have no impact. */
vmg.prev = vma_prev;
ASSERT_EQ(merge_existing(&vmg), vma_prev);
ASSERT_EQ(vma_prev->vm_start, 0);
ASSERT_EQ(vma_prev->vm_end, 0x9000);
ASSERT_EQ(vma_prev->vm_pgoff, 0);
ASSERT_EQ(vma_prev->anon_vma, &dummy_anon_vma);
ASSERT_TRUE(vma_write_started(vma_prev));
ASSERT_TRUE(IS_SET(vma_prev->vm_flags, VM_STICKY));