On Thu, 2013-08-08 at 13:03 +0800, Tang Chen wrote:
Change it to the style like other macros:
#define INVALID_TABLE(x, path, name) \
do { pr_err("ACPI OVERRIDE: " x " [%s%s]\n", path, name); } while (0)
Single statement macros do _not_ need to use
"do { foo(); } while (0)"
and should be written as
"foo()"
--
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c[]@@ -564,8 +564,8 @@ static const char * const table_sigs[] = {
ACPI_SIG_RSDT, ACPI_SIG_XSDT, ACPI_SIG_SSDT, NULL };
/* Non-fatal errors: Affected tables/files are ignored */
-#define INVALID_TABLE(x, path, name) \
- { pr_err("ACPI OVERRIDE: " x " [%s%s]\n", path, name); continue; }
+#define ACPI_INVALID_TABLE(x, path, name) \
+ do { pr_err("ACPI OVERRIDE: " x " [%s%s]\n", path, name); } while (0)
Just remove the silly macro altogether
@@ -593,9 +593,11 @@ void __init acpi_initrd_override(void *data, size_t size)[]- if (file.size< sizeof(struct acpi_table_header))
- INVALID_TABLE("Table smaller than ACPI header",
+ if (file.size< sizeof(struct acpi_table_header)) {
+ ACPI_INVALID_TABLE("Table smaller than ACPI header",
cpio_path, file.name);
and use the normal style
pr_err("ACPI OVERRIDE: Table smaller than ACPI header [%s%s]\n",
cpio_path, file.name);
@@ -603,15 +605,21 @@ void __init acpi_initrd_override(void *data, size_t size)
etc...