Messages in this thread Patch in this message | | | Date | Tue, 21 Jan 2003 20:54:37 +0000 (GMT) | From | Hugh Dickins <> | Subject | [PATCH] ext2 allocation failures |
| |
For almost a year (since 2.5.4) ext2_new_block has tended to set err 0 instead of -ENOSPC or -EIO. This manifested variously (typically depends on what's stale in ext2_get_block's chain[4] array): sometimes __brelse free free buffer backtraces, sometimes release_pages oops, usually generic_make_request beyond end of device messages, followed by further ext2 errors.
[Insert lecture on dangers of using goto for unwind :-]
Hugh
--- 2.5.59/fs/ext2/balloc.c Tue Dec 24 06:23:03 2002 +++ linux/fs/ext2/balloc.c Tue Jan 21 20:14:37 2003 @@ -470,10 +470,10 @@ ext2_debug ("allocating block %d. ", block); + *err = 0; out_release: group_release_blocks(desc, gdp_bh, group_alloc); release_blocks(sb, es_alloc); - *err = 0; out_unlock: unlock_super (sb); DQUOT_FREE_BLOCK(inode, dq_alloc); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |