btree cleanups and unification
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest21 patches 37 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/21 | split up xfs_btree_init_cursorfs/ fs/ fs/ +9 more | +196 | 0 replies | |
| 2/21 | add generic btree typesfs/ | +25 | 0 replies | |
| 3/21 | make btree root in inode support genericfs/ fs/ fs/ | +30 | 0 replies | |
| 4/21 | add a long pointers flag to xfs_btree_curfs/ fs/ fs/ | +5 | 0 replies | |
| 5/21 | refactor xfs_btree_readaheadfs/ fs/ fs/ | +77 | 0 replies | |
| 6/21 | refactor btree validation helpersfs/ fs/ | +146 | 0 replies | |
| 7/21 | add new btree statisticsfs/ fs/ fs/ | +97 | 1 reply | |
| 8/21 | make btree tracing genericfs/ fs/ fs/ +11 more | +886 | 2 replies | |
| 9/21 | implement generic xfs_btree_incrementfs/ fs/ fs/ +9 more | +312 | 3 replies | |
| 10/21 | implement generic xfs_btree_decrementfs/ fs/ fs/ +8 more | +134 | 2 replies | |
| 11/21 | implement generic xfs_btree_lookupfs/ fs/ fs/ +9 more | +559 | 3 replies | |
| 12/21 | implement generic xfs_btree_updkeyfs/ fs/ fs/ +2 more | +204 | 3 replies | |
| 13/21 | implement generic xfs_btree_updatefs/ fs/ fs/ +8 more | +333 | 3 replies | |
| 14/21 | add get_maxrecs btree operationfs/ fs/ fs/ +2 more | +32 | 2 replies | |
| 15/21 | implement generic xfs_btree_rshiftfs/ fs/ fs/ +2 more | +508 | 4 replies | |
| 16/21 | implement generic xfs_btree_lshiftfs/ fs/ fs/ +2 more | +204 | 4 replies | |
| 17/21 | implement generic xfs_btree_splitfs/ fs/ fs/ +2 more | +458 | 3 replies | |
| 18/21 | implement semi-generic xfs_btree_new_rootfs/ fs/ fs/ +1 more | +189 | 1 reply | |
| 19/21 | implement generic xfs_btree_inѕert/insrecfs/ fs/ fs/ +8 more | +510 | 1 reply | |
| 20/21 | implement generic xfs_btree_delete/delrecfs/ fs/ fs/ +8 more | +905 | 1 reply | |
| 21/21 | clean up xfs_bmap_btree.cfs/ fs/ fs/ +1 more | +231 | 2 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 00/21] btree cleanups and unification
This is the full btree unficiation based on Dave's initial patches plus various cleanups. This second versions post now contains the complete btree refactoring, and passes XFSQA.
The two first patches from the first round have been merged, so they are not included anymore. In the reposted patches not much has changed, only the readahead helpers have been renamed and the tracing infrastructure has been improved a little.
The real news is the missing btree operations, including all the hairy ones. These have been reimplemented looking at the three original btrees and Daves code, in doubt going with the former. That means the small helpers to insert/remove/move records are gone now in favour of following the original code more closely. This fixed the one off error showing up in the intial refactoring.
There's a lot of new comments and empty lines, so by diffstat the new code isn't all that much smaller:
36 files changed, 6041 insertions(+), 7128 deletions(-)
but the (debug) binary modules is almost 15kb smaller:
text data bss dec hex filename 631577 4227 3092 638896 9bfb0 fs/xfs/xfs.ko.old 616929 4435 3124 624488 98768 fs/xfs/xfs.ko.btree
I have not run any benchmarks yet to see what the performance impact is, and I still have some ideas to optimize the code.