@@ -435,14 +435,20 @@ static void __init check_multiple_madt(void)
return;
}
-static void acpi_table_taint(struct acpi_table_header *table)
+static void acpi_table_taint(struct acpi_table_header *table, int taint,
+ const char *action)
{
- pr_warn("Override [%4.4s-%8.8s], this is unsafe: tainting kernel\n",
- table->signature, table->oem_table_id);
- add_taint(TAINT_OVERRIDDEN_ACPI_TABLE, LOCKDEP_NOW_UNRELIABLE);
+ enum lockdep_ok lockdep = LOCKDEP_STILL_OK;
+
+ pr_info(PREFIX "table %s [%4.4s-%6.6s-%8.8s]\n", action,
+ table->signature, table->oem_id, table->oem_table_id);
+
+ if (taint == TAINT_OVERRIDDEN_ACPI_TABLE)
+ lockdep = LOCKDEP_NOW_UNRELIABLE;
+
+ add_taint(taint, lockdep);
}
-#ifdef CONFIG_ACPI_INITRD_TABLE_OVERRIDE
static u64 acpi_tables_addr;
static int all_tables_size;
@@ -471,9 +477,9 @@ static const char * const table_sigs[] = {
#define ACPI_HEADER_SIZE sizeof(struct acpi_table_header)
-#define ACPI_OVERRIDE_TABLES 64
-static struct cpio_data __initdata acpi_initrd_files[ACPI_OVERRIDE_TABLES];
-static DECLARE_BITMAP(acpi_initrd_installed, ACPI_OVERRIDE_TABLES);
+#define ACPI_INITRD_TABLES 64
+static struct cpio_data __initdata acpi_initrd_files[ACPI_INITRD_TABLES];
+static DECLARE_BITMAP(acpi_initrd_installed, ACPI_INITRD_TABLES);
#define MAP_CHUNK_SIZE (NR_FIX_BTMAPS << PAGE_SHIFT)
@@ -488,7 +494,7 @@ static void __init acpi_table_initrd_init(void
*data, size_t size)
if (data == NULL || size == 0)
return;
- for (no = 0; no < ACPI_OVERRIDE_TABLES; no++) {
+ for (no = 0; no < ACPI_INITRD_TABLES; no++) {
file = find_cpio_data(cpio_path, data, size, &offset);
if (!file.data)