Re: [BUG] acpica: ltp_acpi test case causes kernel crash at acpi_ns_walk_namespace

From: Rafael J. Wysocki
Date: Wed Dec 13 2017 - 11:52:45 EST


On Wed, Dec 13, 2017 at 3:55 PM, Vadim Lomovtsev
<Vadim.Lomovtsev@xxxxxxxxxxxxxxxxxx> wrote:
> On Wed, Dec 13, 2017 at 12:45:50AM +0100, Rafael J. Wysocki wrote:
>> On Tuesday, December 12, 2017 4:59:19 PM CET Vadim Lomovtsev wrote:
>> > Hi guys,
>> >
>> > While running LTP tests I've faced kernel crash caused by ltp_acpi test case.
>> > I have ACPI support enabled in kernel but kernel is boot with FDT having ACPI
>> > disabled. The ltp_acpi test case application is built along with ltp_acpi_cmds
>> > module to run ACPI tests.
>> >
>> > So my question is - should we update acpica implementation at kernel side by
>> > adding 'acpi_disabled' variable checking to the 'acpi_get_devices' function (see
>> > patch next to this email, maybe not a good approach) or this should be fixed at LTP
>> > side so the ltp_acpi_cmds should be updated in order to check if acpi is enabled
>> > before running tests ?
>>
>> There should be a check preventing acpi_get_devices() from being called in the
>> acpi_disabled case.
>
> In my case I have to update ltp_acpi code then.

RIght.

>>
>> acpi_disabled is Linux-specific and the ACPICA code isn't, so the code calling
>> ACPICA functions should check acpi_disabled when necessary.
>
> Agree. However getting back to LTP tests it looks like such calls were implemented
> intentionally without checking of aspi_disabled value.
>
> Don't we have any self-testing stuff in acpica to prevent such scenarious ?

ACPICA doesn't know anything about acpi_disabled as I said already.

I would argue that testing unsupported use cases in LTP is not very useful.

Thanks,
Rafael