diff options
author | Barnabás Pőcze <pobrn@protonmail.com> | 2021-09-04 17:55:42 +0000 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2021-09-14 12:26:01 +0200 |
commit | dea878d88f9d0135d0024cf5955d03402b475e5b (patch) | |
tree | bdd8d4b45503b7d4be93210e0cede7d517a44619 /drivers/platform/x86/wmi.c | |
parent | 67f472fdacf4a691b1c3c20c27800b23ce31e2de (diff) | |
download | lwn-dea878d88f9d0135d0024cf5955d03402b475e5b.tar.gz lwn-dea878d88f9d0135d0024cf5955d03402b475e5b.zip |
platform/x86: wmi: make GUID block packed
The `guid_block` struct is overlaid onto a buffer
coming from the _WDG ACPI object of the device.
For this reason mark the struct packed and add
assertions about sizes.
Signed-off-by: Barnabás Pőcze <pobrn@protonmail.com>
Link: https://lore.kernel.org/r/20210904175450.156801-16-pobrn@protonmail.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'drivers/platform/x86/wmi.c')
-rw-r--r-- | drivers/platform/x86/wmi.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/platform/x86/wmi.c b/drivers/platform/x86/wmi.c index dc96cae71fd0..7e294f596785 100644 --- a/drivers/platform/x86/wmi.c +++ b/drivers/platform/x86/wmi.c @@ -18,6 +18,7 @@ #include <linux/acpi.h> #include <linux/bits.h> +#include <linux/build_bug.h> #include <linux/device.h> #include <linux/init.h> #include <linux/kernel.h> @@ -50,7 +51,10 @@ struct guid_block { }; u8 instance_count; u8 flags; -}; +} __packed; +static_assert(sizeof(typeof_member(struct guid_block, guid)) == 16); +static_assert(sizeof(struct guid_block) == 20); +static_assert(__alignof__(struct guid_block) == 1); struct wmi_block { struct wmi_device dev; |