On Tue, 1 Oct 2024 07:44:36 -0700 Joe Damato wrote: > > But if you change any core API, let's say rename a field used in several > > drivers, you anyway need to adjust the affected drivers. > > Sorry, but that's a totally different argument. > > There are obvious cases where touching certain parts of core would > require changes to drivers, yes. I agree on that if I change an API > or a struct field name, or remove an enum, then this affects drivers > which must be updated.
+1 I fully agree with Joe. Drivers asserting the size of core structures is both undue burden on core changes and pointless. The former is subjective, as for the latter: most core structures will contain cold / slow path data, usually at the end. If you care about performance of anything that follows a core struct you need to align the next field yourself. IDK how you want to fit this into your magic macros but complex nested types should be neither ro, rw nor cold. They are separate.