On Fri, 2 Jul 2021 12:49:55 -0400 Alyssa Rosenzweig alyssa@collabora.com wrote:
Why is there padding instead of putting point first?
We can move the point field first, but we need to keep the explicit padding: the struct has to be 64bit aligned because of the __u64 field (which the compiler takes care of) but if we don't have an explicit padding, the unused 32bits are undefined, which might cause trouble if we extend the struct at some point, since we sort of expect that old userspace keep this unused 32bit slot to 0, while new users set non-zero values if they have to.
Makes sense. Reordering still probably makes sense.
Actually, I can't re-order if I want the new in_syncs parser to work with the old ioctl(), which you and Steven asked me to do :-).