From: Dmitry Monakhov Date: Sat, 22 Oct 2011 05:26:05 +0000 (-0400) Subject: ext4: cleanup ext4_ext_grow_indepth code X-Git-Tag: v3.2-rc1~85^2~38 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1939dd84b3f52e9c8d1b46dffae2058f16a3ff6a;p=pandora-kernel.git ext4: cleanup ext4_ext_grow_indepth code Currently code make an impression what grow procedure is very complicated and some mythical paths, blocks are involved. But in fact grow in depth it relatively simple procedure: 1) Just create new meta block and copy root data to that block. 2) Convert root from extent to index if old depth == 0 3) Update root block pointer This patch does: - Reorganize code to make it more self explanatory - Do not pass path parameter to new_meta_block() in order to provoke allocation from inode's group because top-level block should site closer to it's inode, but not to leaf data block. [ This happens anyway, due to logic in mballoc; we should drop the path parameter from new_meta_block() entirely. -- tytso ] Signed-off-by: Dmitry Monakhov Signed-off-by: "Theodore Ts'o" --- Reading git-diff-tree failed