Re: [PATCH] ACPI: PPTT: Fix table length check when parsing processor nodes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 07, 2025 at 11:51:24AM +0800, Yicong Yang wrote:
> From: Yicong Yang <yangyicong@xxxxxxxxxxxxx>
> 
> Below error is met on my board and QEMU VM on SMT or non-SMT machine:
>   ACPI PPTT: PPTT table found, but unable to locate core 31 (31)
> 
> This is because the processor node is found by iterating the PPTT
> table under condition (for both acpi_find_processor_node() and
> acpi_pptt_leaf_node()):
>   while (entry + proc_sz < table_end)
>     [parse the processor node]
> 
> If the last processor node is happened to be the last node in the
> PPTT table, above condition will always be false since
> entry + proc_sz == table_end. Thus the last CPU is not parsed.
> Fix the loop condition to resolve the issue.
> 
> This issue is exposed by [1] but the root cause is explained above.
> Before [1] entry + proc_sz is always smaller than table_end.
>

Another thread [1]  with similar patch.

-- 
Regards,
Sudeep

[1] https://lore.kernel.org/all/20250506-draco-taped-15f475cd@mheyne-amazon




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux