diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/fs.h | 3 | ||||
| -rw-r--r-- | include/linux/pagemap.h | 7 | ||||
| -rw-r--r-- | include/linux/pagevec.h | 7 |
3 files changed, 11 insertions, 6 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index 857e797b0ad2..f8954889d336 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -324,7 +324,6 @@ struct address_space { struct radix_tree_root page_tree; /* radix tree of all pages */ spinlock_t tree_lock; /* and spinlock protecting it */ struct list_head clean_pages; /* list of clean pages */ - struct list_head dirty_pages; /* list of dirty pages */ struct list_head locked_pages; /* list of locked pages */ struct list_head io_pages; /* being prepared for I/O */ unsigned long nrpages; /* number of total pages */ @@ -371,6 +370,8 @@ struct block_device { #define PAGECACHE_TAG_DIRTY 0 #define PAGECACHE_TAG_WRITEBACK 1 +int mapping_tagged(struct address_space *mapping, int tag); + /* * Use sequence counter to get consistent i_size on 32-bit processors. */ diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index e552cb04a0ed..70d07dbfcd02 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h @@ -69,9 +69,10 @@ extern struct page * find_trylock_page(struct address_space *mapping, unsigned long index); extern struct page * find_or_create_page(struct address_space *mapping, unsigned long index, unsigned int gfp_mask); -extern unsigned int find_get_pages(struct address_space *mapping, - pgoff_t start, unsigned int nr_pages, - struct page **pages); +unsigned find_get_pages(struct address_space *mapping, pgoff_t start, + unsigned int nr_pages, struct page **pages); +unsigned find_get_pages_tag(struct address_space *mapping, pgoff_t *index, + int tag, unsigned int nr_pages, struct page **pages); /* * Returns locked page at given index in given cache, creating it if needed. diff --git a/include/linux/pagevec.h b/include/linux/pagevec.h index 2a332eed3d82..e6e43ce82b55 100644 --- a/include/linux/pagevec.h +++ b/include/linux/pagevec.h @@ -22,8 +22,11 @@ void __pagevec_free(struct pagevec *pvec); void __pagevec_lru_add(struct pagevec *pvec); void __pagevec_lru_add_active(struct pagevec *pvec); void pagevec_strip(struct pagevec *pvec); -unsigned int pagevec_lookup(struct pagevec *pvec, struct address_space *mapping, - pgoff_t start, unsigned int nr_pages); +unsigned pagevec_lookup(struct pagevec *pvec, struct address_space *mapping, + pgoff_t start, unsigned nr_pages); +unsigned pagevec_lookup_tag(struct pagevec *pvec, + struct address_space *mapping, pgoff_t *index, int tag, + unsigned nr_pages); static inline void pagevec_init(struct pagevec *pvec, int cold) { |
