remove m_dirops v2

Christoph Hellwig
2019-11-07T18:24:19Z

Hi all,

this series removes the indirect call to distinguish between the v4 and v5
formats for dir and attrs btree blocks, and for file type enabled vs not
enabled formats. Indirect calls have always been rather expensive, and
gotten even more so with the spectre workarounds.

This series removes almost 700 lines of code and shaves almost 6KB off
the size of the xfs module.

Changes since v1:
- use unsigned int everywhere in struct xfs_da_geometry
- cleanup pointer arithmetics in various places, and document the reasons why
we are doing pointer arithmetics better in various changelog
- use unsigned types more consistently
- document the pointers to the on-disk antry arrays in the various
in-core header structures
- use XFS_MAXINUMBER instead of open coded constants
- misc additional cleanups