On 2012年08月04日 01:57, Theodore Ts'o wrote: > On Fri, Aug 03, 2012 at 10:18:57AM -0500, Eric Sandeen wrote: >> On 8/3/12 9:19 AM, Wang Sheng-Hui wrote: >>> Dear all, >>> >>> I read through the namei.c code recently, but didn't notice any code to >>> reduce the size of a dir file (append can increase its size though). >> >> Right, AFAIK nothing in kernelspace will reduce the size. > > In theory, if the dir_index (htree) support is enabled, it would be > possible for the kernel to reorganize the directory dynamically. > > If dir_index is not enabled, reorganizing the directory would would > break any open readdir() sessions and any NFS server file handles. > (Which means if the file system has been exported by NFS in the past, > and expects to be exported by NFS in the future, reorg'ing a directory > will seriously confuse any clients which have cached NFS handles.) > > For that reason, historically we've never bothered to try to implement > ways of decreasing the size of a directory --- especially since in > most cases, sysadmins can do something like: > > mkdir foo.new ; mv foo/* foo.new ; mv foo.new foo > > which while isn't perfect, works most of the time. > > Regards, > > - Ted Thanks for your patient explanations, Eric & Ted! Regards, Wang Sheng-Hui -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html