Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ACPI: PCC: Fix race condition by removing static qualifier

Local variable 'ret' in acpi_pcc_address_space_setup() is currently
declared as 'static'. This can lead to race conditions in a
multithreaded environment.

Remove the 'static' qualifier to ensure that 'ret' will be allocated
directly on the stack as a local variable.

Fixes: a10b1c99e2dc ("ACPI: PCC: Setup PCC Opregion handler only if platform interrupt is available")
Signed-off-by: Pengjie Zhang <zhangpengjie2@huawei.com>
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: lihuisong@huawei.com
Cc: 6.2+ <stable@vger.kernel.org> # 6.2+
[ rjw: Changelog edits ]
Link: https://patch.msgid.link/20251210132634.2050033-1-zhangpengjie2@huawei.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Pengjie Zhang and committed by
Rafael J. Wysocki
f103fa12 6ea3a44c

+1 -1
+1 -1
drivers/acpi/acpi_pcc.c
··· 52 52 struct pcc_data *data; 53 53 struct acpi_pcc_info *ctx = handler_context; 54 54 struct pcc_mbox_chan *pcc_chan; 55 - static acpi_status ret; 55 + acpi_status ret; 56 56 57 57 data = kzalloc(sizeof(*data), GFP_KERNEL); 58 58 if (!data)