Re: [PATCH 2/7] ACPI: Limit the number of per cpu ACPI bootup messages

Mike Travis
2009-11-13T13:53:56Z

David Rientjes wrote:
> On Thu, 12 Nov 2009, Mike Travis wrote:
>
>>>> --- linux.orig/drivers/acpi/tables.c
>>>> +++ linux/drivers/acpi/tables.c
>>>> @@ -66,11 +66,15 @@
>>>> {
>>>> struct acpi_madt_local_x2apic *p =
>>>> (struct acpi_madt_local_x2apic *)header;
>>>> - printk(KERN_INFO PREFIX
>>>> - "X2APIC (apic_id[0x%02x] uid[0x%02x] %s)\n",
>>>> - p->local_apic_id, p->uid,
>>>> - (p->lapic_flags & ACPI_MADT_ENABLED) ?
>>>> - "enabled" : "disabled");
>>>> + /*
>>>> + * Per cpu tracing clogs console output when NR_CPUS
>>>> + * is large. Send only to kernel log buffer.
>>>> + */
>>>> + printk(KERN_DEBUG PREFIX
>>>> + "X2APIC (apic_id[0x%02x] uid[0x%02x] %s)\n",
>>>> + p->local_apic_id, p->uid,
>>>> + (p->lapic_flags & ACPI_MADT_ENABLED) ?
>>>> + "enabled" : "disabled");
>>>> }
>>>> break;
>>>>
>>> You can still use dev_dbg(PREFIX "...") here.
>> I thought dev_dbg needed the 'dev' structure and I wasn't sure how to get
>> that...?
>>
>
> Ah, ok, it needs to be pr_debug(PREFIX "...") then.

The primary reason I'm using KERN_DEBUG instead of pr_debug is that the
messages will end up in the log in the former case, so dmesg can print
them out, whether it's a DEBUG kernel or not. This helps diagnose problems
without requiring a reboot of a DEBUG kernel to reproduce a problem, which
often is not acceptable to many customers (security and system availability
being the primary concerns.)

> Any reason why the other printk's in acpi_table_print_madt_entry() weren't
> converted to use KERN_DEBUG? It might make more sense to convert all
> those to use a new acpi=verbose flag.

I thought of that, but the ACPI debug infrastructure is complex to understand,
and since I can't really test most cases, I wanted to tread lightly.
>
> I'm not sure if Ingo is the right person to go through for acpi patches, I
> think this should probably be submitted to Len Brown <lenb@kernel.org> and
> linux-acpi@vger.kernel.org instead.

I can do that.

Thanks,
Mike