Fix longstanding "error: storage size of '__mod_dmi_device_table' isn't known"
authorAlexey Dobriyan <adobriyan@gmail.com>
Wed, 21 Jan 2009 22:58:36 +0000 (01:58 +0300)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 28 Jan 2009 00:06:21 +0000 (16:06 -0800)
gcc 3.4.6 doesn't like MODULE_DEVICE_TABLE(dmi, x) expansion enough to
error out.  Shut it up in a most simple way.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/mod_devicetable.h

index 97b91d1..fde8667 100644 (file)
@@ -443,6 +443,13 @@ struct dmi_system_id {
        struct dmi_strmatch matches[4];
        void *driver_data;
 };
+/*
+ * struct dmi_device_id appears during expansion of
+ * "MODULE_DEVICE_TABLE(dmi, x)". Compiler doesn't look inside it
+ * but this is enough for gcc 3.4.6 to error out:
+ *     error: storage size of '__mod_dmi_device_table' isn't known
+ */
+#define dmi_device_id dmi_system_id
 #endif
 
 #define DMI_MATCH(a, b)        { a, b }