diff options
Diffstat (limited to 'fs/buffer.c')
| -rw-r--r-- | fs/buffer.c | 31 | 
1 files changed, 4 insertions, 27 deletions
diff --git a/fs/buffer.c b/fs/buffer.c index 2219a76e2ca..f903f2e5b4f 100644 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -54,23 +54,15 @@ init_buffer(struct buffer_head *bh, bh_end_io_t *handler, void *private)  }  EXPORT_SYMBOL(init_buffer); -static int sync_buffer(void *word) +static int sleep_on_buffer(void *word)  { -	struct block_device *bd; -	struct buffer_head *bh -		= container_of(word, struct buffer_head, b_state); - -	smp_mb(); -	bd = bh->b_bdev; -	if (bd) -		blk_run_address_space(bd->bd_inode->i_mapping);  	io_schedule();  	return 0;  }  void __lock_buffer(struct buffer_head *bh)  { -	wait_on_bit_lock(&bh->b_state, BH_Lock, sync_buffer, +	wait_on_bit_lock(&bh->b_state, BH_Lock, sleep_on_buffer,  							TASK_UNINTERRUPTIBLE);  }  EXPORT_SYMBOL(__lock_buffer); @@ -90,7 +82,7 @@ EXPORT_SYMBOL(unlock_buffer);   */  void __wait_on_buffer(struct buffer_head * bh)  { -	wait_on_bit(&bh->b_state, BH_Lock, sync_buffer, TASK_UNINTERRUPTIBLE); +	wait_on_bit(&bh->b_state, BH_Lock, sleep_on_buffer, TASK_UNINTERRUPTIBLE);  }  EXPORT_SYMBOL(__wait_on_buffer); @@ -749,7 +741,7 @@ static int fsync_buffers_list(spinlock_t *lock, struct list_head *list)  {  	struct buffer_head *bh;  	struct list_head tmp; -	struct address_space *mapping, *prev_mapping = NULL; +	struct address_space *mapping;  	int err = 0, err2;  	INIT_LIST_HEAD(&tmp); @@ -783,10 +775,6 @@ static int fsync_buffers_list(spinlock_t *lock, struct list_head *list)  				 * wait_on_buffer() will do that for us  				 * through sync_buffer().  				 */ -				if (prev_mapping && prev_mapping != mapping) -					blk_run_address_space(prev_mapping); -				prev_mapping = mapping; -  				brelse(bh);  				spin_lock(lock);  			} @@ -3138,17 +3126,6 @@ out:  }  EXPORT_SYMBOL(try_to_free_buffers); -void block_sync_page(struct page *page) -{ -	struct address_space *mapping; - -	smp_mb(); -	mapping = page_mapping(page); -	if (mapping) -		blk_run_backing_dev(mapping->backing_dev_info, page); -} -EXPORT_SYMBOL(block_sync_page); -  /*   * There are no bdflush tunables left.  But distributions are   * still running obsolete flush daemons, so we terminate them here.  |