diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-01-09 02:38:23 -0500 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-01-09 02:38:23 -0500 |
commit | da733563be5a9da26fe81d9f007262d00b846e22 (patch) | |
tree | db28291df94a2043af2123911984c5c173da4e6f /fs/buffer.c | |
parent | 6ccbcf2cb41131f8d56ef0723bf3f7c1f8486076 (diff) | |
parent | dab78d7924598ea4031663dd10db814e2e324928 (diff) |
Merge branch 'next' into for-linus
Diffstat (limited to 'fs/buffer.c')
-rw-r--r-- | fs/buffer.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/fs/buffer.c b/fs/buffer.c index 1a80b048ade8..19d8eb7fdc81 100644 --- a/fs/buffer.c +++ b/fs/buffer.c | |||
@@ -213,13 +213,16 @@ __find_get_block_slow(struct block_device *bdev, sector_t block) | |||
213 | * elsewhere, don't buffer_error if we had some unmapped buffers | 213 | * elsewhere, don't buffer_error if we had some unmapped buffers |
214 | */ | 214 | */ |
215 | if (all_mapped) { | 215 | if (all_mapped) { |
216 | char b[BDEVNAME_SIZE]; | ||
217 | |||
216 | printk("__find_get_block_slow() failed. " | 218 | printk("__find_get_block_slow() failed. " |
217 | "block=%llu, b_blocknr=%llu\n", | 219 | "block=%llu, b_blocknr=%llu\n", |
218 | (unsigned long long)block, | 220 | (unsigned long long)block, |
219 | (unsigned long long)bh->b_blocknr); | 221 | (unsigned long long)bh->b_blocknr); |
220 | printk("b_state=0x%08lx, b_size=%zu\n", | 222 | printk("b_state=0x%08lx, b_size=%zu\n", |
221 | bh->b_state, bh->b_size); | 223 | bh->b_state, bh->b_size); |
222 | printk("device blocksize: %d\n", 1 << bd_inode->i_blkbits); | 224 | printk("device %s blocksize: %d\n", bdevname(bdev, b), |
225 | 1 << bd_inode->i_blkbits); | ||
223 | } | 226 | } |
224 | out_unlock: | 227 | out_unlock: |
225 | spin_unlock(&bd_mapping->private_lock); | 228 | spin_unlock(&bd_mapping->private_lock); |
@@ -285,7 +288,7 @@ static void free_more_memory(void) | |||
285 | struct zone *zone; | 288 | struct zone *zone; |
286 | int nid; | 289 | int nid; |
287 | 290 | ||
288 | wakeup_flusher_threads(1024); | 291 | wakeup_flusher_threads(1024, WB_REASON_FREE_MORE_MEM); |
289 | yield(); | 292 | yield(); |
290 | 293 | ||
291 | for_each_online_node(nid) { | 294 | for_each_online_node(nid) { |
@@ -1470,13 +1473,13 @@ static void discard_buffer(struct buffer_head * bh) | |||
1470 | } | 1473 | } |
1471 | 1474 | ||
1472 | /** | 1475 | /** |
1473 | * block_invalidatepage - invalidate part of all of a buffer-backed page | 1476 | * block_invalidatepage - invalidate part or all of a buffer-backed page |
1474 | * | 1477 | * |
1475 | * @page: the page which is affected | 1478 | * @page: the page which is affected |
1476 | * @offset: the index of the truncation point | 1479 | * @offset: the index of the truncation point |
1477 | * | 1480 | * |
1478 | * block_invalidatepage() is called when all or part of the page has become | 1481 | * block_invalidatepage() is called when all or part of the page has become |
1479 | * invalidatedby a truncate operation. | 1482 | * invalidated by a truncate operation. |
1480 | * | 1483 | * |
1481 | * block_invalidatepage() does not have to release all buffers, but it must | 1484 | * block_invalidatepage() does not have to release all buffers, but it must |
1482 | * ensure that no dirty buffer is left outside @offset and that no I/O | 1485 | * ensure that no dirty buffer is left outside @offset and that no I/O |