I can probably mange to free up another 8 bytes in struct file by killing f_version and moving it into the few filesystems that care about it.
That would give us back 8 bytes for future expansions.
It's a rough draft and lacking commit messages but it should work (famous last words)...