On Fri, Jul 05, 2024 at 06:04:39AM -0700, Christoph Hellwig wrote: > > +struct dsm_output { > > + u16 status; > > + u8 function_specific_err; > > + u8 vendor_specific_err; > > + u32 state; > > +} __packed; > > This structure is naturally aligned, so no need for the __packed. Isn't the compiler free to insert padding wherever it sees fit? structs passed to ACPI firmware would no longer comply with the spec-prescribed layout then and declaring them __packed seems to be the only way to ensure that doesn't happen. Thanks, Lukas