I just noticed while looking through ext4-delalloc-extents-48bit.patch in
git that it is doing all of the bit shifting explicitly, instead of using
the ext_pblock() and ext_store_pblock() helpers...
It also appears that some of the extent code is using "ee_len" directly
instead of the ext4_get_actual_len() helper to mask off the unwritten
extent flag (e.g. delalloc_extents*.patch). I wonder if we should change
the ee_len type so that it isn't easy to access it directly (e.g. put it
inside a named union) so this mistake is visible more easily in the future.
Principal Software Engineer
Cluster File Systems, Inc.