Source-Changes-HG archive

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

[src/netbsd-9]: src/sys/external/bsd/acpica/dist/dispatcher Pull up following...



details:   https://anonhg.NetBSD.org/src/rev/7e08619f37b4
branches:  netbsd-9
changeset: 370135:7e08619f37b4
user:      martin <martin%NetBSD.org@localhost>
date:      Sun Sep 18 13:28:49 2022 +0000

description:
Pull up following revision(s) (requested by msaitoh in ticket #1527):

        sys/external/bsd/acpica/dist/dispatcher/dswexec.c: revision 1.2

Fix out of range access in AcpiDsExecEndOp().

 - Found by kUBSan.
 - See: https://github.com/acpica/acpica/pull/745

diffstat:

 sys/external/bsd/acpica/dist/dispatcher/dswexec.c |  6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diffs (17 lines):

diff -r 927516d6c50b -r 7e08619f37b4 sys/external/bsd/acpica/dist/dispatcher/dswexec.c
--- a/sys/external/bsd/acpica/dist/dispatcher/dswexec.c Sun Sep 18 00:12:43 2022 +0000
+++ b/sys/external/bsd/acpica/dist/dispatcher/dswexec.c Sun Sep 18 13:28:49 2022 +0000
@@ -456,9 +456,11 @@
 
         /*
          * All opcodes require operand resolution, with the only exceptions
-         * being the ObjectType and SizeOf operators.
+         * being the ObjectType and SizeOf operators as well as operands that
+        * take no arguments.
          */
-        if (!(WalkState->OpInfo->Flags & AML_NO_OPERAND_RESOLVE))
+        if (!(WalkState->OpInfo->Flags & AML_NO_OPERAND_RESOLVE) &&
+           (WalkState->OpInfo->Flags & AML_HAS_ARGS))
         {
             /* Resolve all operands */
 



Home | Main Index | Thread Index | Old Index