diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/buffer_head.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/buffer_head.h b/include/linux/buffer_head.h index 856536d9f11b..f388b513df75 100644 --- a/include/linux/buffer_head.h +++ b/include/linux/buffer_head.h @@ -10,6 +10,7 @@ #include <linux/types.h> #include <linux/fs.h> #include <linux/linkage.h> +#include <linux/pagemap.h> #include <linux/wait.h> #include <asm/atomic.h> @@ -136,6 +137,8 @@ void init_buffer(struct buffer_head *, bh_end_io_t *, void *); void set_bh_page(struct buffer_head *bh, struct page *page, unsigned long offset); int try_to_free_buffers(struct page *); +struct buffer_head *alloc_page_buffers(struct page *page, unsigned long size, + int retry); void create_empty_buffers(struct page *, unsigned long, unsigned long b_state); void end_buffer_read_sync(struct buffer_head *bh, int uptodate); @@ -205,6 +208,14 @@ int nobh_truncate_page(struct address_space *, loff_t); * inline definitions */ +static inline void attach_page_buffers(struct page *page, + struct buffer_head *head) +{ + page_cache_get(page); + SetPagePrivate(page); + page->private = (unsigned long)head; +} + static inline void get_bh(struct buffer_head *bh) { atomic_inc(&bh->b_count); |
