1
0
Fork 0
alistair23-linux/drivers/acpi/acpica
Erik Kaneda 1e8d218655 ACPICA: Do not increment operation_region reference counts for field units
[ Upstream commit 6a54ebae6d ]

ACPICA commit e17b28cfcc31918d0db9547b6b274b09c413eb70

Object reference counts are used as a part of ACPICA's garbage
collection mechanism. This mechanism keeps track of references to
heap-allocated structures such as the ACPI operand objects.

Recent server firmware has revealed that this reference count can
overflow on large servers that declare many field units under the
same operation_region. This occurs because each field unit declaration
will add a reference count to the source operation_region.

This change solves the reference count overflow for operation_regions
objects by preventing fieldunits from incrementing their
operation_region's reference count. Each operation_region's reference
count will not be changed by named objects declared under the Field
operator. During namespace deletion, the operation_region namespace
node will be deleted and each fieldunit will be deleted without
touching the deleted operation_region object.

Link: https://github.com/acpica/acpica/commit/e17b28cf
Signed-off-by: Erik Kaneda <erik.kaneda@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-08-19 08:16:05 +02:00
..
Makefile ACPICA: Remove PCI bits from ACPICA when CONFIG_PCI is unset 2018-12-20 10:19:49 +01:00
acapps.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
accommon.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acconvert.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acdebug.h ACPICA: Debugger: Fix possible fault with the "test objects" command 2019-02-18 11:21:10 +01:00
acdispat.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acevents.h ACPICA: Clear status of GPEs on first direct enable 2019-06-19 11:46:21 +02:00
acglobal.h ACPICA: remove legacy module-level code due to deprecation 2019-07-04 00:59:43 +02:00
achware.h ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE 2020-04-17 10:50:09 +02:00
acinterp.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
aclocal.h ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
acmacros.h ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
acnamesp.h ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
acobject.h ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
acopcode.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acparser.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acpredef.h ACPICA: ACPI 6.3: Adding predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG 2019-02-18 11:21:11 +01:00
acresrc.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acstruct.h ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
actables.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acutils.h ACPICA: Fully deploy ACPI_PRINTF_LIKE macro 2019-08-21 00:00:37 +02:00
amlcode.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
amlresrc.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dbcmds.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbconvert.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbdisply.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
dbexec.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
dbfileio.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbhistry.c ACPICA: Fix issues with arg types within printf format strings 2019-08-21 00:00:36 +02:00
dbinput.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
dbmethod.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
dbnames.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
dbobject.c ACPICA: Debugger: remove redundant assignment on obj_desc 2019-08-21 00:00:36 +02:00
dbstats.c ACPICA: Fully deploy ACPI_PRINTF_LIKE macro 2019-08-21 00:00:37 +02:00
dbtest.c ACPICA: Debugger: Fix possible fault with the "test objects" command 2019-02-18 11:21:10 +01:00
dbutils.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbxface.c ACPICA: Debugger: refactor to fix unused variable warning 2018-11-08 18:41:47 +01:00
dsargs.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dscontrol.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsdebug.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsfield.c ACPICA: Dispatcher: add status checks 2020-06-22 09:30:52 +02:00
dsinit.c ACPICA: Update for object initialization sequence 2019-07-04 00:59:43 +02:00
dsmethod.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsmthdat.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dsobject.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsopcode.c ACPICA: Interpreter: Emit warning for creation of a zero-length op region 2019-02-18 11:21:10 +01:00
dspkginit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsutils.c ACPICA: Remove defines that use deprecated flag 2018-12-13 22:40:51 +01:00
dswexec.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
dswload.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
dswload2.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
dswscope.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dswstate.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evevent.c ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() 2020-02-28 17:22:20 +01:00
evglock.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evgpe.c ACPICA: Clear status of GPEs on first direct enable 2019-06-19 11:46:21 +02:00
evgpeblk.c ACPICA: Clear status of GPEs on first direct enable 2019-06-19 11:46:21 +02:00
evgpeinit.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
evgpeutil.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evhandler.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evmisc.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evregion.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
evrgnini.c ACPICA: Remove legacy module-level code support 2019-02-18 11:21:10 +01:00
evsci.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
evxface.c ACPICA: Clear status of GPEs on first direct enable 2019-06-19 11:46:21 +02:00
evxfevnt.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evxfgpe.c ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE 2020-04-17 10:50:09 +02:00
evxfregn.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exconcat.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exconfig.c ACPICA: Update table load object initialization 2019-07-11 22:38:42 +02:00
exconvrt.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
excreate.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exdebug.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exdump.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
exfield.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
exfldio.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exmisc.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exmutex.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exnames.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
exoparg1.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg2.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg3.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg6.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exprep.c ACPICA: Do not increment operation_region reference counts for field units 2020-08-19 08:16:05 +02:00
exregion.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exresnte.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exresolv.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exresop.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exserial.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
exstore.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exstoren.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exstorob.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exsystem.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
extrace.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exutils.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
hwacpi.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwesleep.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwgpe.c ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE 2020-04-17 10:50:09 +02:00
hwpci.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
hwregs.c ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value 2018-08-14 23:49:13 +02:00
hwsleep.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwtimer.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwvalid.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwxfsleep.c ACPICA: Get rid of acpi_sleep_dispatch() 2019-02-07 12:21:33 +01:00
nsaccess.c ACPICA: Fully deploy ACPI_PRINTF_LIKE macro 2019-08-21 00:00:37 +02:00
nsalloc.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
nsarguments.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsconvert.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsdump.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
nsdumpdv.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nseval.c ACPICA: remove legacy module-level code due to deprecation 2019-07-04 00:59:43 +02:00
nsinit.c ACPICA: Update for object initialization sequence 2019-07-04 00:59:43 +02:00
nsload.c ACPICA: remove legacy module-level code due to deprecation 2019-07-04 00:59:43 +02:00
nsnames.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
nsobject.c ACPICA: Namespace: remove address node from global list after method termination 2019-04-09 10:05:11 +02:00
nsparse.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
nspredef.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsprepkg.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsrepair.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
nsrepair2.c ACPICA: Fix issues with arg types within printf format strings 2019-08-21 00:00:36 +02:00
nssearch.c ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness" 2018-07-09 11:14:45 +02:00
nsutils.c ACPICA: remove legacy module-level code due to deprecation 2019-07-04 00:59:43 +02:00
nswalk.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsxfeval.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
nsxfname.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
nsxfobj.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
psargs.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
psloop.c ACPICA: Remove legacy module-level code support 2019-02-18 11:21:10 +01:00
psobject.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psopcode.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psopinfo.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psparse.c ACPICA: Update/clarify messages for control method failures 2019-02-18 11:21:10 +01:00
psscope.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
pstree.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psutils.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
pswalk.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
rsaddr.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rscalc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rscreate.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsdump.c ACPICA: Fix potential infinite loop in acpi_rs_dump_byte_list 2018-05-15 10:16:10 +02:00
rsdumpinfo.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
rsinfo.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsio.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsirq.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
rslist.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsmemory.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsmisc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsserial.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
rsutils.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsxface.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
tbdata.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
tbfadt.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
tbfind.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
tbinstal.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
tbprint.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
tbutils.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
tbxface.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
tbxfload.c ACPICA: Update table load object initialization 2019-07-11 22:38:42 +02:00
tbxfroot.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utaddress.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utalloc.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utascii.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
utbuffer.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utcache.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utcopy.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utdebug.c ACPICA: Fully deploy ACPI_PRINTF_LIKE macro 2019-08-21 00:00:37 +02:00
utdecode.c ACPICA: utilities: fix spelling of PCC to platform_comm_channel 2019-04-09 11:25:26 +02:00
utdelete.c ACPICA: Do not increment operation_region reference counts for field units 2020-08-19 08:16:05 +02:00
uterror.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
uteval.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utexcep.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utglobal.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
uthex.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utids.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utinit.c ACPICA: remove legacy module-level code due to deprecation 2019-07-04 00:59:43 +02:00
utlock.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utmath.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utmisc.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
utmutex.c ACPICA: Convert acpi_gbl_hardware lock back to an acpi_raw_spinlock 2018-05-10 17:18:45 +02:00
utnonansi.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utobject.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utosi.c ACPICA: Add "Windows 2019" string to _OSI support. 2019-08-21 00:00:37 +02:00
utownerid.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
utpredef.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
utprint.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utresdecode.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utresrc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utstate.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utstring.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
utstrsuppt.c ACPICA: Utilities: split hex detection into smaller functions 2018-08-14 23:49:13 +02:00
utstrtoul64.c ACPICA: Utilities: split hex detection into smaller functions 2018-08-14 23:49:13 +02:00
uttrack.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utuuid.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utxferror.c ACPICA: Convert more ACPI errors to firmware errors 2019-01-15 18:04:02 +01:00
utxfinit.c ACPICA: Update for object initialization sequence 2019-07-04 00:59:43 +02:00
utxfmutex.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00