Hi all,

Sorry to bother.
for ext2_find_near(), why we tro to find near block by tring priveous block? Why not forward?



static ext2_fsblk_t ext2_find_near(struct inode *inode, Indirect *ind)
{
    struct ext2_inode_info *ei = EXT2_I(inode);
    __le32 *start = ind->bh ? (__le32 *) ind->bh->b_data : ei->i_data;
    __le32 *p;
    ext2_fsblk_t bg_start;
    ext2_fsblk_t colour;

    /* Try to find previous block */
    for (p = ind->p - 1; p >= start; p--)
        if (*p)
            return le32_to_cpu(*p);

    /* No such thing, so let's try location of indirect block */
    if (ind->bh)
        return ind->bh->b_blocknr;





Thank you!