Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions | Variables
interval_tree.c File Reference
#include <linux/mm.h>
#include <linux/fs.h>
#include <linux/rmap.h>
#include <linux/interval_tree_generic.h>

Go to the source code of this file.

Functions

 INTERVAL_TREE_DEFINE (struct vm_area_struct, shared.linear.rb, unsigned long, shared.linear.rb_subtree_last, vma_start_pgoff, vma_last_pgoff,, vma_interval_tree) void vma_interval_tree_insert_after(struct vm_area_struct *node
 
 VM_BUG_ON (vma_start_pgoff(node)!=vma_start_pgoff(prev))
 
 if (!prev->shared.linear.rb.rb_right)
 
 if ()
 
 INTERVAL_TREE_DEFINE (struct anon_vma_chain, rb, unsigned long, rb_subtree_last, avc_start_pgoff, avc_last_pgoff, static inline, __anon_vma_interval_tree) void anon_vma_interval_tree_insert(struct anon_vma_chain *node
 
void anon_vma_interval_tree_remove (struct anon_vma_chain *node, struct rb_root *root)
 
struct anon_vma_chainanon_vma_interval_tree_iter_first (struct rb_root *root, unsigned long first, unsigned long last)
 
struct anon_vma_chainanon_vma_interval_tree_iter_next (struct anon_vma_chain *node, unsigned long first, unsigned long last)
 

Variables

struct vm_area_structprev
 
struct vm_area_struct struct
rb_root
root
 
struct vm_area_structparent
 
unsigned long last = vma_last_pgoff(node)
 
 else
 
 link = &parent->shared.linear.rb.rb_left
 
node shared linear rb_subtree_last = last
 
rb_link_node & node
 

Function Documentation

struct anon_vma_chain* anon_vma_interval_tree_iter_first ( struct rb_root root,
unsigned long  first,
unsigned long  last 
)
read

Definition at line 93 of file interval_tree.c.

struct anon_vma_chain* anon_vma_interval_tree_iter_next ( struct anon_vma_chain node,
unsigned long  first,
unsigned long  last 
)
read

Definition at line 100 of file interval_tree.c.

void anon_vma_interval_tree_remove ( struct anon_vma_chain node,
struct rb_root root 
)

Definition at line 86 of file interval_tree.c.

if ( !prev->shared.linear.rb.  rb_right)

Definition at line 39 of file interval_tree.c.

if ( )

Definition at line 45 of file interval_tree.c.

INTERVAL_TREE_DEFINE ( struct vm_area_struct  ,
shared.linear.  rb,
unsigned  long,
shared.linear.  rb_subtree_last,
vma_start_pgoff  ,
vma_last_pgoff  ,
vma_interval_tree   
)
INTERVAL_TREE_DEFINE ( struct anon_vma_chain  ,
rb  ,
unsigned  long,
rb_subtree_last  ,
avc_start_pgoff  ,
avc_last_pgoff  ,
static  inline,
__anon_vma_interval_tree   
)
VM_BUG_ON ( vma_start_pgoff(node)!  = vma_start_pgoff(prev))

Variable Documentation

else
Initial value:
{
parent = rb_entry(prev->shared.linear.rb.rb_right,
struct vm_area_struct, shared.linear.rb)

Definition at line 42 of file interval_tree.c.

unsigned long last = vma_last_pgoff(node)

Definition at line 35 of file interval_tree.c.

Definition at line 53 of file interval_tree.c.

rb_insert_augmented& node

Definition at line 57 of file interval_tree.c.

Definition at line 34 of file interval_tree.c.

Definition at line 30 of file interval_tree.c.

node shared linear rb_subtree_last = last

Definition at line 56 of file interval_tree.c.

struct rb_root* root
Initial value:
{
struct rb_node **link

Definition at line 32 of file interval_tree.c.