android_kernel_xiaomi_sm8350/drivers/acpi/acpica
Raju Rangoju ae465109d8 ACPICA: Revert "ACPICA: avoid Info: mapping multiple BARs. Your kernel is fine."
[ Upstream commit a83e1385b780d41307433ddbc86e3c528db031f0 ]

Undo the modifications made in commit d410ee5109 ("ACPICA: avoid
"Info: mapping multiple BARs. Your kernel is fine.""). The initial
purpose of this commit was to stop memory mappings for operation
regions from overlapping page boundaries, as it can trigger warnings
if different page attributes are present.

However, it was found that when this situation arises, mapping
continues until the boundary's end, but there is still an attempt to
read/write the entire length of the map, leading to a NULL pointer
deference. For example, if a four-byte mapping request is made but
only one byte is mapped because it hits the current page boundary's
end, a four-byte read/write attempt is still made, resulting in a NULL
pointer deference.

Instead, map the entire length, as the ACPI specification does not
mandate that it must be within the same page boundary. It is
permissible for it to be mapped across different regions.

Link: https://github.com/acpica/acpica/pull/954
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218849
Fixes: d410ee5109 ("ACPICA: avoid "Info: mapping multiple BARs. Your kernel is fine."")
Co-developed-by: Sanath S <Sanath.S@amd.com>
Signed-off-by: Sanath S <Sanath.S@amd.com>
Signed-off-by: Raju Rangoju <Raju.Rangoju@amd.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-07-05 09:08:24 +02:00
..
acapps.h
accommon.h
acconvert.h
acdebug.h
acdispat.h
acevents.h
acglobal.h ACPICA: Avoid evaluating methods too early during system resume 2021-11-17 09:48:30 +01:00
achware.h ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE 2020-04-17 10:50:09 +02:00
acinterp.h
aclocal.h
acmacros.h
acnamesp.h ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
acobject.h ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-03-11 14:06:49 +01:00
acopcode.h
acparser.h
acpredef.h
acresrc.h
acstruct.h
actables.h
acutils.h
amlcode.h
amlresrc.h
dbcmds.c
dbconvert.c
dbdisply.c
dbexec.c
dbfileio.c
dbhistry.c
dbinput.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
dbmethod.c
dbnames.c ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects 2023-05-30 12:44:02 +01:00
dbobject.c
dbstats.c
dbtest.c
dbutils.c
dbxface.c
dsargs.c
dscontrol.c
dsdebug.c
dsfield.c ACPICA: Dispatcher: add status checks 2020-06-22 09:30:52 +02:00
dsinit.c
dsmethod.c ACPICA: Fix error code path in acpi_ds_call_control_method() 2023-01-18 11:41:34 +01:00
dsmthdat.c
dsobject.c
dsopcode.c
dspkginit.c
dsutils.c
dswexec.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
dswload.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
dswscope.c
dswstate.c ACPICA: Avoid undefined behavior: applying zero offset to null pointer 2023-05-30 12:44: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
evgpe.c
evgpeblk.c
evgpeinit.c
evgpeutil.c
evhandler.c ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-03-11 14:06:49 +01:00
evmisc.c
evregion.c ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-03-11 14:06:49 +01:00
evrgnini.c
evsci.c
evxface.c
evxfevnt.c
evxfgpe.c ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE 2020-04-17 10:50:09 +02:00
evxfregn.c ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-03-11 14:06:49 +01:00
exconcat.c
exconfig.c
exconvrt.c
excreate.c
exdebug.c
exdump.c
exfield.c ACPICA: Fix wrong interpretation of PCC address 2022-01-27 09:19:45 +01:00
exfldio.c
exmisc.c
exmutex.c
exnames.c
exoparg1.c ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() 2022-01-27 09:19:45 +01:00
exoparg2.c
exoparg3.c
exoparg6.c
exprep.c ACPICA: Do not increment operation_region reference counts for field units 2020-08-19 08:16:05 +02:00
exregion.c ACPICA: Revert "ACPICA: avoid Info: mapping multiple BARs. Your kernel is fine." 2024-07-05 09:08:24 +02:00
exresnte.c
exresolv.c
exresop.c
exserial.c
exstore.c
exstoren.c
exstorob.c
exsystem.c
extrace.c
exutils.c
hwacpi.c
hwesleep.c ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 2022-01-27 09:19:45 +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
hwregs.c
hwsleep.c ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 2022-01-27 09:19:45 +01:00
hwtimer.c
hwvalid.c ACPICA: Drop port I/O validation for some regions 2023-03-11 16:43:38 +01:00
hwxface.c
hwxfsleep.c ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 2022-01-27 09:19:45 +01:00
Makefile ACPI: disable -Wstringop-truncation 2024-06-16 13:28:34 +02:00
nsaccess.c ACPICA: Always create namespace nodes using acpi_ns_create_node() 2022-05-12 12:23:41 +02:00
nsalloc.c
nsarguments.c
nsconvert.c
nsdump.c
nsdumpdv.c
nseval.c
nsinit.c
nsload.c
nsnames.c ACPICA: Fixes for acpiExec namespace init file 2020-04-23 10:36:39 +02:00
nsobject.c
nsparse.c
nspredef.c
nsprepkg.c
nsrepair2.c Revert "ACPICA: Fix memory leak caused by _CID repair function" 2021-08-12 13:20:54 +02:00
nsrepair.c ACPICA: nsrepair: handle cases without a return value correctly 2023-03-11 16:43:38 +01:00
nssearch.c
nsutils.c
nswalk.c ACPICA: Avoid walking the ACPI Namespace if it is not there 2022-04-15 14:18:22 +02:00
nsxfeval.c
nsxfname.c
nsxfobj.c
psargs.c
psloop.c
psobject.c
psopcode.c ACPICA: Add AML_NO_OPERAND_RESOLVE flag to Timer 2023-09-23 11:00:03 +02:00
psopinfo.c
psparse.c
psscope.c
pstree.c
psutils.c
pswalk.c
psxface.c
rsaddr.c
rscalc.c
rscreate.c
rsdump.c
rsdumpinfo.c
rsinfo.c
rsio.c
rsirq.c
rslist.c
rsmemory.c
rsmisc.c
rsserial.c
rsutils.c
rsxface.c
tbdata.c
tbfadt.c
tbfind.c
tbinstal.c
tbprint.c
tbutils.c
tbxface.c
tbxfload.c
tbxfroot.c
utaddress.c
utalloc.c
utascii.c
utbuffer.c
utcache.c
utcopy.c ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage() 2023-01-18 11:40:57 +01:00
utdebug.c
utdecode.c
utdelete.c ACPICA: Utilities: Avoid deleting the same object twice in a row 2022-01-27 09:19:45 +01:00
uterror.c
uteval.c
utexcep.c
utglobal.c
uthex.c
utids.c
utinit.c
utlock.c
utmath.c
utmisc.c
utmutex.c
utnonansi.c
utobject.c
utosi.c
utownerid.c
utpredef.c
utprint.c
utresdecode.c
utresrc.c
utstate.c
utstring.c
utstrsuppt.c
utstrtoul64.c
uttrack.c
utuuid.c
utxface.c
utxferror.c
utxfinit.c
utxfmutex.c