Namjae Jeon <linkinj...@gmail.com> writes:

>>If above is correct, right implement to change get_block().
> Now when we try to write in the fallocated region ( with keep size) in
> the fat_write_begin when it is called first time it checks that the
> mismatch is present between the mmu_private and mmu_actual , and hence
> zero out the region ; since buffer_new is not set for fallocated
> region by fat_get_block , we explicitly zero out the lseeked region
> using "fat_zero_falloc_area" and normal write occurs beyond that , and
> i_size is updated accordingly , and as such there is no need to move
> the code to fat_get_block .

OK. So, like I said, you *changed* the behavior of get_block() via
fallocate() change, right?  (I think, now, you noticed fat_get_block()
was changed.) Since you changed the behavior of get_block(), you had to
hack write_begin(). (IMO, that patch is dirty hack to fix write_begin()
path only)

Likewise, you have to prove all callers of get_block() must work
collectedly with that change.

What happen on direct I/O, bmap ioctl, etc.? Well, anyway, please fix
the root cause of change of behavior.

Thanks.
-- 
OGAWA Hirofumi <hirof...@mail.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to