]> git.karo-electronics.de Git - linux-beck.git/commitdiff
buffer: make touch_buffer() an exported function
authorTejun Heo <tj@kernel.org>
Fri, 11 Jan 2013 21:06:35 +0000 (13:06 -0800)
committerJens Axboe <axboe@kernel.dk>
Mon, 14 Jan 2013 14:00:36 +0000 (15:00 +0100)
We want to add a trace point to touch_buffer() but macros and inline
functions defined in header files can't have tracing points.  Move
touch_buffer() to fs/buffer.c and make it a proper function.

The new exported function is also declared inline.  As most uses of
touch_buffer() are inside buffer.c with nilfs2 as the only other user,
the effect of this change should be negligible.

Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/buffer.c
include/linux/buffer_head.h

index c017a2dfb9097e73837230d244ffb14f73dd0e1c..a8c2dfb68dcdfcf5cb73b7d8a1e6bd289476c15a 100644 (file)
@@ -53,6 +53,12 @@ void init_buffer(struct buffer_head *bh, bh_end_io_t *handler, void *private)
 }
 EXPORT_SYMBOL(init_buffer);
 
+inline void touch_buffer(struct buffer_head *bh)
+{
+       mark_page_accessed(bh->b_page);
+}
+EXPORT_SYMBOL(touch_buffer);
+
 static int sleep_on_buffer(void *word)
 {
        io_schedule();
index 458f497738a445ec96bf2153f2e0f99ee49e3e8c..5afc4f94d110f67590e8a7924c09b006f1e711c8 100644 (file)
@@ -126,7 +126,6 @@ BUFFER_FNS(Write_EIO, write_io_error)
 BUFFER_FNS(Unwritten, unwritten)
 
 #define bh_offset(bh)          ((unsigned long)(bh)->b_data & ~PAGE_MASK)
-#define touch_buffer(bh)       mark_page_accessed(bh->b_page)
 
 /* If we *know* page->private refers to buffer_heads */
 #define page_buffers(page)                                     \
@@ -142,6 +141,7 @@ BUFFER_FNS(Unwritten, unwritten)
 
 void mark_buffer_dirty(struct buffer_head *bh);
 void init_buffer(struct buffer_head *, bh_end_io_t *, void *);
+void touch_buffer(struct buffer_head *bh);
 void set_bh_page(struct buffer_head *bh,
                struct page *page, unsigned long offset);
 int try_to_free_buffers(struct page *);