Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7702ae0d authored by Tang Chen's avatar Tang Chen Committed by Rafael J. Wysocki
Browse files

ACPI / osl: Kill macro INVALID_TABLE().



The macro INVALID_TABLE() is defined like this:

 #define INVALID_TABLE(x, path, name)                                    \
         { pr_err("ACPI OVERRIDE: " x " [%s%s]\n", path, name); continue; }

And it is used like this:

	for (...) {
		...
		if (...)
			INVALID_TABLE()
		...
	}

The "continue" in the macro makes the code hard to understand.

And also, this macro is only used several times in a single file.
As suggested by Joe Perches <joe@perches.com>, we can remote it and
use pr_err directly.

So after this patch, this macro is removed, and pr_err() is used
like this:

	for (...) {
		...
		if (...) {
			pr_err("ACPI OVERRIDE: ......");
			continue;
		}
		...
	}

Signed-off-by: default avatarTang Chen <tangchen@cn.fujitsu.com>
Suggested-by: default avatarJoe Perches <joe@perches.com>
Acked-by: default avatarTejun Heo <tj@kernel.org>
Acked-by: default avatarToshi Kani <toshi.kani@hp.com>
Reviewed-by: default avatarZhang Yanfei <zhangyanfei@cn.fujitsu.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 598bae70
Loading
Loading
Loading
Loading
+20 −16
Original line number Diff line number Diff line
@@ -564,10 +564,6 @@ static const char * const table_sigs[] = {
	ACPI_SIG_WDRT, ACPI_SIG_DSDT, ACPI_SIG_FADT, ACPI_SIG_PSDT,
	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_HEADER_SIZE sizeof(struct acpi_table_header)

/* Must not increase 10 or needs code modification below */
@@ -594,9 +590,11 @@ void __init acpi_initrd_override(void *data, size_t size)
		data += offset;
		size -= offset;

		if (file.size < sizeof(struct acpi_table_header))
			INVALID_TABLE("Table smaller than ACPI header",
		if (file.size < sizeof(struct acpi_table_header)) {
			pr_err("ACPI OVERRIDE: Table smaller than ACPI header [%s%s]\n",
				cpio_path, file.name);
			continue;
		}

		table = file.data;

@@ -604,15 +602,21 @@ void __init acpi_initrd_override(void *data, size_t size)
			if (!memcmp(table->signature, table_sigs[sig], 4))
				break;

		if (!table_sigs[sig])
			INVALID_TABLE("Unknown signature",
		if (!table_sigs[sig]) {
			pr_err("ACPI OVERRIDE: Unknown signature [%s%s]\n",
				cpio_path, file.name);
		if (file.size != table->length)
			INVALID_TABLE("File length does not match table length",
			continue;
		}
		if (file.size != table->length) {
			pr_err("ACPI OVERRIDE: File length does not match table length [%s%s]\n",
				cpio_path, file.name);
		if (acpi_table_checksum(file.data, table->length))
			INVALID_TABLE("Bad table checksum",
			continue;
		}
		if (acpi_table_checksum(file.data, table->length)) {
			pr_err("ACPI OVERRIDE: Bad table checksum [%s%s]\n",
				cpio_path, file.name);
			continue;
		}

		pr_info("%4.4s ACPI table found in initrd [%s%s][0x%x]\n",
			table->signature, cpio_path, file.name, table->length);