HAMMER changes in HEAD, also needs testing

看板DFBSD_kernel作者時間16年前 (2009/06/21 12:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/8 (看更多)
I've made some fairly straightforward changes to HAMMER in HEAD, but they need testing. * Inode numbers are now allocated to maintain linearity with the directory scan order, when possible. Note however that this optimization breaks if a file is created under a temporary name and then renamed. This should significantly improve cpdup, tar, cpio, ls, and find. The optimization only applies to newly created directory trees, existing trees cannot be reoptimized since their inode numbers have already been assigned. * Hints can now be passed to the block allocator. The B-Tree code now uses them to try to keep internal nodes more localized. The block allocator also now leaves a bit of empty space at the end of the big-block for localized B-Tree expansion room. I also made a minor change to cpdup to not use temporary filenames when doing a fresh copy (when the target file does not exist). To test HAMMER with cpdup you need the new cpdup. The old cpdup always creates a temporary file and then rename()'s and that unfortunately breaks the optimization that HAMMER makes to order the inode numbers. -Matt Matthew Dillon <dillon@backplane.com>
文章代碼(AID): #1AFRV900 (DFBSD_kernel)
討論串 (同標題文章)
文章代碼(AID): #1AFRV900 (DFBSD_kernel)