diff options
| author | Steven Whitehouse <swhiteho@redhat.com> | 2006-09-13 09:55:09 -0400 |
|---|---|---|
| committer | Steven Whitehouse <swhiteho@redhat.com> | 2006-09-13 09:55:09 -0400 |
| commit | 0bc0748dfbefacce9c6b67ab23f2c80133b598f7 (patch) | |
| tree | 76946adc08a26973fcdb39fe0eb3ef5e1f8f121d /fs/ext3/inode.c | |
| parent | b6397893a5ed81970e803d61ee2f1a0e79f87438 (diff) | |
| parent | 95064a75ebf8744e1ff595e8cd7ff9b6c851523e (diff) | |
Merge branch 'master' into gfs2
Diffstat (limited to 'fs/ext3/inode.c')
| -rw-r--r-- | fs/ext3/inode.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c index c5ee9f0691e3..0f0b1eadb98d 100644 --- a/fs/ext3/inode.c +++ b/fs/ext3/inode.c | |||
| @@ -1009,11 +1009,14 @@ struct buffer_head *ext3_getblk(handle_t *handle, struct inode *inode, | |||
| 1009 | buffer_trace_init(&dummy.b_history); | 1009 | buffer_trace_init(&dummy.b_history); |
| 1010 | err = ext3_get_blocks_handle(handle, inode, block, 1, | 1010 | err = ext3_get_blocks_handle(handle, inode, block, 1, |
| 1011 | &dummy, create, 1); | 1011 | &dummy, create, 1); |
| 1012 | if (err == 1) { | 1012 | /* |
| 1013 | * ext3_get_blocks_handle() returns number of blocks | ||
| 1014 | * mapped. 0 in case of a HOLE. | ||
| 1015 | */ | ||
| 1016 | if (err > 0) { | ||
| 1017 | if (err > 1) | ||
| 1018 | WARN_ON(1); | ||
| 1013 | err = 0; | 1019 | err = 0; |
| 1014 | } else if (err >= 0) { | ||
| 1015 | WARN_ON(1); | ||
| 1016 | err = -EIO; | ||
| 1017 | } | 1020 | } |
| 1018 | *errp = err; | 1021 | *errp = err; |
| 1019 | if (!err && buffer_mapped(&dummy)) { | 1022 | if (!err && buffer_mapped(&dummy)) { |
