Compare commits

...
Sign in to create a new pull request.

84 commits

Author SHA1 Message Date
Fedora Release Engineering
2034bc6bc0 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 03:25:26 +00:00
Gwyn Ciesla
1517179023 20251212 2025-12-15 11:23:45 -06:00
Gwyn Ciesla
dd197c56b0 20250807 2025-08-26 08:57:34 -05:00
Fedora Release Engineering
c31d4bd944 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 16:44:02 +00:00
Fedora Release Engineering
060346c679 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 10:32:15 +00:00
Al Stone
b0faa22b60 Final patch cleanup
Added three new patches to fix problems with dumping various
tables, and removed all the remaining patches that no longer
serve a purpose.

Thanks to the contributors for PR#4 and PR#5 for the suggestions.
These have all been incorporated even if they are not in exactly
the same form.

Signed-off-by: Al Stone <ahs3@ahs3.net>
2024-08-13 12:48:42 -06:00
Al Stone
bada08a9e1 Update to 20240322 and remove support for big-endian architectures
As s390x was the only one remaining, it has now been excluded.  This
was best done with an update of the source tree to match upstream.
This is turn caused additional patch updates.

With s390x gone, all of the big-endian patches can be removed,
simplifying things enormously.  This is the biggest change.

Several other patches that are no longer needed due to changes
in Fedora builds (ld flags, for example), or that are no longer needed
(such as armv7) have also been removed.  Further cleanup likely to
follow.

Signed-off-by: Al Stone <ahs3@ahs3.net>
2024-08-12 15:16:04 -06:00
Miroslav Suchý
4617be5167 convert GPLv2 license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-07-29 10:10:03 +02:00
Fedora Release Engineering
0b430889a9 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 16:33:43 +00:00
Fedora Release Engineering
332bf9f7ba Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 22:37:29 +00:00
Fedora Release Engineering
9e790bf25d Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 12:06:33 +00:00
Fedora Release Engineering
237083a28a Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 12:52:11 +00:00
Fedora Release Engineering
7aef804454 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 21:21:52 +00:00
Fedora Release Engineering
82469f7721 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 20:24:26 +00:00
Al Stone
a89b86980e Correct typo in the spec file
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-04-03 16:00:44 -06:00
Al Stone
1ac5d77229 Remove all 32-bit architectures (i686 and armv7hl)
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-04-03 15:45:41 -06:00
Al Stone
fc3eef63e8 Update to 20220331 upstream sources
This includes new source tarballs, updated patches, and updated
expected results for test cases.  In addition, three new tables
(PRMT, RGRT and SVKL) now have big-endian support.

Signed-off-by: Al Stone <ahs3@redhat.com>
2022-04-03 15:18:02 -06:00
Al Stone
cf71d6aebb Stop supporting i686 architecture
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-03-28 20:37:18 -06:00
Al Stone
b8d03463ff Add two new patches to correct compilation errors in rawhide
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-03-18 16:09:50 -06:00
Al Stone
97df1c2ef7 Update all patches to match upstream 20211217 release
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-03-18 16:08:40 -06:00
Al Stone
b0419b13c7 Update 20211217 tarballs
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-03-09 20:05:58 -07:00
Al Stone
da0952d381 Update source tarballs
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-03-09 20:00:17 -07:00
Al Stone
5a8256ff73 Update the patches so they apply
Signed-off-by: Al Stone <ahs3@redhat.com>
2022-03-09 19:45:13 -07:00
Fedora Release Engineering
6c32bdbf15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 20:53:44 +00:00
Al Stone
22a7401210 Fix WPBT processing of zero-length argument lists
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-27 18:04:30 -06:00
Al Stone
3ccfccfec1 Running 'iasl -T all' would segfault
Dumping all the templates worked fine until the PHAT dump, which
caused the segfault; removing extraneous assignments from big-endian
patch for the table fixes the problem.

Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-27 16:47:53 -06:00
Fedora Release Engineering
7f8779a500 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 17:13:39 +00:00
Fedora Release Engineering
d9b84e63e0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 12:18:32 +00:00
Al Stone
b457eb3d12 Correct a tarball name
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-12 18:15:05 -06:00
Al Stone
59852bc27d Commit the updated sources file
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-12 18:08:02 -06:00
Al Stone
ee9acad4cb Removed the iASL compiler manual
Somehow a copy of the iASL compiler manual crept into the acpitests
tarball in an obscure location.  Since the license is not FOSS friendly,
remove it so that it does not get distributed.

Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-12 18:01:44 -06:00
Al Stone
77d39bce5f Correct big-endian problems with PHAT
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-12 17:51:04 -06:00
Al Stone
4f99fff578 Forgot to commit sources file
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-12 09:19:58 -06:00
Al Stone
416465f9d4 Update to 20210604 upstream source
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-11 21:22:10 -06:00
Al Stone
1f5bfe9b39 Rename acpica-unix2-20210604.tar_0.gz to a proper name
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-10 16:59:58 -06:00
Al Stone
691cca69d9 Upload 20210604 source files
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-10 16:47:50 -06:00
Al Stone
3bed39446c Upload 20210331 source files for archival purposes only
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-10 16:45:26 -06:00
Al Stone
e51802b365 Upload 20210105 source files for archival purposes only
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-10 16:42:57 -06:00
Al Stone
245633aae5 Upload 20201217 source files for archival purposes only
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-10 16:41:33 -06:00
Al Stone
0eba164ee5 Upload 20201113 source files for archival purposes only
Signed-off-by: Al Stone <ahs3@redhat.com>
2021-07-10 16:39:01 -06:00
Fedora Release Engineering
630afe986a - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-25 23:46:26 +00:00
Tom Stellard
21acab9abc Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-13 01:02:25 +00:00
Al Stone
defe2b6433 Missed a couple of minor endianness corrections
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-29 14:13:33 -06:00
Al Stone
7ae04aaa72 Use %autopatch in the spec file
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-29 10:46:20 -06:00
Al Stone
41d9121d77 Fixed two more obscure endian problems
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-28 15:27:56 -06:00
Al Stone
c6ecf612fe Add a patch to correct for endianness when converting ASL to ASL+
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-27 17:57:20 -06:00
Al Stone
38a008cb32 Fix up patches to account for displacements due to SPDX info
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-25 11:36:21 -06:00
Al Stone
6c29d68058 Update some of the big-endian patches with corrections
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-23 18:40:24 -06:00
Al Stone
249abc074a Add big-endian support for three additional tables: MTMR, VRTC and S3PT
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-23 13:04:26 -06:00
Al Stone
17d826f180 Minor fix to spec file
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-19 12:38:41 -06:00
Al Stone
edb6c78416 Update to upstream 20200925 version
This update also means a major update for all of the big-endian patching
that has been done.  The older mechanism was getting to unwieldy to keep
maintained, and too sensitive to upstream changes.  Hence, redid all of
the old patches, and took the opportunity to make them more amenable to
change over time.  Ultimately, the goal is to have upstream accept these
in some form.

Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-19 12:24:09 -06:00
Al Stone
f9e9c6154d The acpinames command has been deprecated upstream
Remove the command and the man page.  Functionality replacing acpinames
is now found in acpiexec.

Signed-off-by: Al Stone <ahs3@redhat.com>
2020-10-15 15:21:20 -06:00
Al Stone
97b38e48de Remove faulty patch from build
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-09-13 16:37:40 -06:00
Al Stone
6337b475f0 Update expected test result
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-09-13 15:49:37 -06:00
Al Stone
02a30e0c2e Correct bad date in changelog
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-09-13 15:33:00 -06:00
Al Stone
335268930f Update to 20200717 upstream source
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-09-13 15:30:34 -06:00
Al Stone
19a9c691f5 Update to 2020528 upstream source
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-09-13 15:27:09 -06:00
Al Stone
4188296ae3 Merge in some changelog and spec file updates
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-09-13 15:25:15 -06:00
Fedora Release Engineering
ed7c04b852 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-31 23:48:13 +00:00
Fedora Release Engineering
75b40f8005 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 11:42:42 +00:00
Al Stone
8992cb4a75 Update to 20200430 upstream version
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-06-12 15:50:29 -06:00
Al Stone
22392df24e Clean up some of the expected results
NB: this required not using one patch temporarily (big-endian-v3)
which may still turn out to be needed but in some corrected form.

Signed-off-by: Al Stone <ahs3@redhat.com>
2020-04-01 15:51:25 -06:00
Al Stone
ce99b3ebdd Merge branch 'master' of ssh://pkgs.fedoraproject.org/rpms/acpica-tools 2020-04-01 14:18:47 -06:00
Al Stone
b549117a4b Update to 20209326 sources, with refreshed patches
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-04-01 14:17:14 -06:00
Al Stone
5b73a30c60 Update to 20209326 sources, with refreshed patches
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-04-01 14:07:44 -06:00
Al Stone
2652e3e2c4 Additional clean-up for big endian support
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-27 13:27:54 -07:00
Al Stone
a4c3787ec9 Add s390 fixes to handle PPTT properly
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-26 12:57:26 -07:00
Al Stone
f3595ddf16 Add corrections to nsutils.c to allow for big-endian support
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-26 10:29:04 -07:00
Al Stone
a359383058 Add a patch to allow use of PCC Register() again
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-25 17:32:18 -07:00
Al Stone
b2261cf6d3 Cleanup the armv7hl build issues with string usage
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-25 17:13:42 -07:00
Al Stone
cd3d796852 Correct the latest patches for other arches
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-25 12:05:53 -07:00
Al Stone
a3576b784d Correct an ARMv7 patch
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-25 11:56:15 -07:00
Al Stone
a203640b28 Add two patches to deal with arch-specific issues on ARMv7 and s390x
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-25 11:00:37 -07:00
Al Stone
c482290009 Update expected results from misc test
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-24 16:03:06 -07:00
Al Stone
8817859d60 Update to 20200214 upstream and refresh patches
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-24 15:41:56 -07:00
Al Stone
35d1808c46 Update to 20200110 upstream source
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-24 15:26:30 -07:00
Al Stone
7ca9ff9b51 Update to 20191213 upstream source, and GCC10
Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-24 15:20:53 -07:00
Al Stone
9a78de1296 Record that we tried to use the 20191018 upstream release,
but chose not to

Signed-off-by: Al Stone <ahs3@redhat.com>
2020-02-23 16:10:20 -07:00
Al Stone
c278cac062 Merge branch 'master' of ssh://pkgs.fedoraproject.org/rpms/acpica-tools 2020-02-20 13:02:17 -07:00
Fedora Release Engineering
d41282f47b - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 11:10:23 +00:00
Al Stone
d7f8eec1b2 Update to 20191018 upstream source with refreshed patches
Signed-off-by: Al Stone <ahs3@redhat.com>
2019-11-23 16:16:51 -07:00
Al Stone
0acf62d4a9 Add in a patch to fix incorrect exit status from iasl
Signed-off-by: Al Stone <ahs3@redhat.com>
2019-10-29 17:41:12 -06:00
Al Stone
5fcb15b704 Update to 20190816 upstream source and refresh patches
Signed-off-by: Al Stone <ahs3@redhat.com>
2019-10-27 16:01:59 -06:00
Al Stone
b596c3965c Update to 20190703 upstream
Signed-off-by: Al Stone <ahs3@redhat.com>
2019-10-25 11:16:24 -06:00
32 changed files with 778 additions and 7840 deletions

51
.gitignore vendored
View file

@ -115,3 +115,54 @@ series
/acpitests-unix-20190405.tar.gz
/acpica-unix2-20190509.tar.gz
/acpitests-unix-20190509.tar.gz
/acpica-unix2-20190703.tar.gz
/acpitests-unix-20190703.tar.gz
/acpica-unix2-20190816.tar.gz
/acpitests-unix-20190816.tar.gz
/acpica-unix2-20191018.tar.gz
/acpitests-unix-20191018.tar.gz
/acpica-unix2-20191213.tar.gz
/acpitests-unix-20191213.tar.gz
/acpica-unix2-20200110.tar.gz
/acpitests-unix-20200110.tar.gz
/acpica-unix2-20200214.tar.gz
/acpitests-unix-20200214.tar.gz
/acpica-unix2-20200326.tar.gz
/acpitests-unix-20200326.tar.gz
/acpica-unix2-20200430.tar.gz
/acpitests-unix-20200430.tar.gz
/acpica-unix2-20200528.tar.gz
/acpitests-unix-20200528.tar.gz
/acpica-unix2-20200717.tar.gz
/acpitests-unix-20200717.tar.gz
/acpica-unix2-20200925.tar.gz
/acpitests-unix-20200925.tar.gz
/acpica-unix2-20201113.tar.gz
/acpitests-unix-20201113.tar.gz
/acpica-unix2-20201217.tar.gz
/acpitests-unix-20201217.tar.gz
/acpica-unix2-20210105.tar.gz
/acpitests-unix-20210105.tar.gz
/acpica-unix2-20210331.tar.gz
/acpitests-unix-20210331.tar.gz
/acpica-unix2-20210604.tar_0.gz
/acpitests-unix-20210604.tar.gz
/acpica-unix2-20210604.tar.gz
/acpica-unix2-20210730.tar.gz
/acpitests-unix-20210730.tar.gz
/acpica-unix2-20210930.tar.gz
/acpitests-unix-20210930.tar.gz
/acpica-unix2-20211217.tar.gz
/acpitests-unix-20211217.tar.gz
/acpica-unix2-20220331.tar.gz
/acpitests-unix-20220331.tar.gz
/acpica-unix2-20230331.tar.gz
/acpitests-unix-20230331.tar.gz
/acpica-unix2-20240321.tar.gz
/acpitests-unix-20240321.tar.gz
/acpica-unix2-20240322.tar.gz
/acpitests-unix-20240322.tar.gz
/acpica-unix2-20250807.tar.gz
/acpitests-unix-20250807.tar.gz
/acpica-unix2-20251212.tar.gz
/acpitests-unix-20251212.tar.gz

View file

@ -0,0 +1,30 @@
From 957662e99f6ec38849a9cf47eaebe1c232f74bbd Mon Sep 17 00:00:00 2001
From: Al Stone <ahs3@ahs3.net>
Date: Wed, 14 Apr 2021 21:18:12 -0600
Subject: [PATCH 2/2] Correct dumping of SLIC tables
When dumping the SLIC table, the code was not starting at the proper
offset. Set the offset to the first byte after the header.
Signed-off-by: Al Stone <ahs3@ahs3.net>
---
source/common/dmtbdump3.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/source/common/dmtbdump3.c b/source/common/dmtbdump3.c
index 6e5f5d7ff..9a5b5ecd5 100644
--- a/source/common/dmtbdump3.c
+++ b/source/common/dmtbdump3.c
@@ -177,7 +177,8 @@ AcpiDmDumpSlic (
ACPI_TABLE_HEADER *Table)
{
- (void) AcpiDmDumpTable (Table->Length, sizeof (ACPI_TABLE_HEADER), Table,
+ (void) AcpiDmDumpTable (Table->Length, sizeof (ACPI_TABLE_HEADER),
+ (void *) (Table + sizeof (*Table)),
Table->Length - sizeof (*Table), AcpiDmTableInfoSlic);
}
--
2.45.2

View file

@ -0,0 +1,37 @@
From 1fb473e41bcbfbe21c02bcb30983b87aa94a6cb8 Mon Sep 17 00:00:00 2001
From: Al Stone <ahs3@ahs3.net>
Date: Tue, 13 Aug 2024 09:50:37 -0600
Subject: [PATCH] PHAT FW health table can be zero-length
When calculating the VendorLength of the PHAT FW health data subtable,
the result becomes a negative integer. However, since UINT32 is being
used, it looks like a huge positive integer instead. Conditionalize
the length calculation to handle this case properly.
This was discovered by using the command: iasl -T phat
Signed-off-by: Al Stone <ahs3@ahs3.net>
---
source/common/dmtbdump2.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/source/common/dmtbdump2.c b/source/common/dmtbdump2.c
index 32b76b382..dd4d4878e 100644
--- a/source/common/dmtbdump2.c
+++ b/source/common/dmtbdump2.c
@@ -2432,8 +2432,10 @@ AcpiDmDumpPhat (
/* Get Device-Specific Data - length of which is the remaining subtable length. */
- VendorLength =
- Subtable->Length - sizeof (ACPI_PHAT_HEALTH_DATA) - PathLength;
+ VendorLength = 0;
+ if (Subtable->Length > sizeof (ACPI_PHAT_HEALTH_DATA) + PathLength)
+ VendorLength =
+ Subtable->Length - sizeof (ACPI_PHAT_HEALTH_DATA) - PathLength;
DbgPrint (ASL_DEBUG_OUTPUT, "%u, Subtable->Length %X, VendorLength %X, Offset %X PathLength: %X\n",
__LINE__, Subtable->Length, VendorLength, Offset, PathLength);
--
2.45.2

View file

@ -1,26 +0,0 @@
Index: acpica-unix2-20170728/generate/unix/Makefile.config
===================================================================
--- acpica-unix2-20170728.orig/generate/unix/Makefile.config
+++ acpica-unix2-20170728/generate/unix/Makefile.config
@@ -23,6 +23,9 @@
# OPT_CFLAGS can be overridden on the make command line by
# adding OPT_CFLAGS="..." to the invocation.
#
+# OPT_LDFLAGS can be overridden on the make command line by
+# adding OPT_LDFLAGS="..." to the invocation.
+#
# Notes:
# gcc should be version 4 or greater, otherwise some of the options
# used will not be recognized.
@@ -157,6 +160,11 @@ LDFLAGS +=-m32
endif
#
+# Common linker flags
+#
+OPT_LDFLAGS ?=
+
+#
# Optionally disable optimizations. Optimization causes problems on
# some compilers such as gcc 4.4
#

View file

@ -1,20 +1,22 @@
Name: acpica-tools
Version: 20190509
Release: 5%{?dist}
Version: 20251212
Release: 2%{?dist}
Summary: ACPICA tools for the development and debug of ACPI tables
License: GPLv2
URL: https://www.acpica.org/
# Automatically converted from old format: GPLv2 - review is highly recommended.
License: GPL-2.0-only
URL: https://www.intel.com/content/www/us/en/developer/topic-technology/open/acpica/overview.html
Source0: https://acpica.org/sites/acpica/files/acpica-unix2-%{version}.tar.gz
Source1: https://acpica.org/sites/acpica/files/acpitests-unix-%{version}.tar.gz
ExcludeArch: i686 armv7hl s390x
Source0: https://github.com/acpica/acpica/releases/download/%{version}/acpica-unix2-%{version}.tar.gz
Source1: https://github.com/acpica/acpica/releases/download/%{version}/acpitests-unix-%{version}.tar.gz
Source2: README.Fedora
Source3: iasl.1
Source4: acpibin.1
Source5: acpidump.1
Source6: acpiexec.1
Source7: acpihelp.1
Source8: acpinames.1
Source9: acpisrc.1
Source10: acpixtract.1
Source11: acpiexamples.1
@ -24,25 +26,18 @@ Source14: converterSample.asl.result
Source15: run-misc-tests.sh
Source16: COPYING
Patch0: big-endian.patch
Patch1: unaligned.patch
Patch2: OPT_LDFLAGS.patch
Patch3: int-format.patch
Patch4: f23-harden.patch
Patch5: template.patch
Patch6: ppc64le.patch
Patch7: arm7hl.patch
Patch8: big-endian-v2.patch
Patch9: simple-64bit.patch
Patch10: mips-be-fix.patch
Patch11: cve-2017-13693.patch
Patch12: cve-2017-13694.patch
Patch13: cve-2017-13695.patch
Patch14: str-trunc-warn.patch
Patch15: ptr-cast.patch
Patch16: aslcodegen.patch
Patch17: facp.patch
# other miscellaneous patches
Patch00: unaligned.patch
Patch01: template.patch
Patch04: cve-2017-13695.patch
Patch05: str-trunc-warn.patch
Patch06: dbtest.patch
Patch07: dangling-ptr.patch
Patch08: uuid-len.patch
#Patch11: 0002-Correct-dumping-of-SLIC-tables.patch
#Patch12: 0003-PHAT-FW-health-table-can-be-zero-length.patch
BuildRequires: make
BuildRequires: bison patchutils flex gcc
# The previous iasl package contained only a very small subset of these tools
@ -79,7 +74,6 @@ are installed:
-- acpidump: write out the current contents of ACPI tables
-- acpiexec: simulate AML execution in order to debug method definitions
-- acpihelp: display help messages describing ASL keywords and op-codes
-- acpinames: display complete ACPI name space from input AML
-- acpisrc: manipulate the ACPICA source tree and format source files
for specific environments
-- acpixtract: extract binary ACPI tables from acpidump output (see
@ -91,26 +85,7 @@ This version of the tools is being released under GPLv2 license.
%setup -q -n acpica-unix2-%{version}
gzip -dc %{SOURCE1} | tar -x --strip-components=1 -f -
%patch0 -p1 -b .big-endian
%patch1 -p1 -b .unaligned
%patch2 -p1 -b .OPT_LDFLAGS
%patch3 -p1 -b .int-format
%patch4 -p1 -b .f23-harden
# do not preserve a backup for this patch; it alters the results
# of the template test case and forces it to fail
%patch5 -p1
%patch6 -p1 -b .ppc64le
%patch7 -p1 -b .arm7hl
%patch8 -p1 -b .big-endian-v2
%patch9 -p1 -b .simple-64bit
%patch10 -p1 -b .mips-be-fix
%patch11 -p1 -b .cve-2017-13693
%patch12 -p1 -b .cve-2017-13694
%patch13 -p1 -b .cve-2017-13695
%patch14 -p1 -b .str-trunc-warn
%patch15 -p1 -b .ptr-cast
%patch16 -p1 -b .aslcodegen
%patch17 -p1 -b .facp
%autopatch -p1
cp -p %{SOURCE2} README.Fedora
cp -p %{SOURCE3} iasl.1
@ -118,7 +93,6 @@ cp -p %{SOURCE4} acpibin.1
cp -p %{SOURCE5} acpidump.1
cp -p %{SOURCE6} acpiexec.1
cp -p %{SOURCE7} acpihelp.1
cp -p %{SOURCE8} acpinames.1
cp -p %{SOURCE9} acpisrc.1
cp -p %{SOURCE10} acpixtract.1
cp -p %{SOURCE11} acpiexamples.1
@ -171,7 +145,7 @@ OPT_LDFLAGS="%{__global_ldflags}"
export OPT_CFLAGS
export OPT_LDFLAGS
make
%{make_build}
%install
@ -195,19 +169,7 @@ cd tests
[ $? -eq 0 ] || exit 1
# misc tests
./run-misc-tests.sh %{buildroot}%{_bindir} %{version}
# Template tests
cd templates
make
if [ -f diff.log ]
then
if [ -s diff.log ]
then
exit 1 # implies errors occurred
fi
fi
cd ..
#./run-misc-tests.sh %{buildroot}%{_bindir} %{version}
%pre
if [ -e %{_bindir}/acpixtract-acpica ]
@ -239,6 +201,169 @@ fi
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 20251212-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Mon Dec 15 2025 Gwyn Ciesla <gwync@protonmail.com> - 20251212-1
- 20251212
* Fri Aug 15 2025 Gwyn Ciesla <gwync@protonmail.com> - 20250807-1
- 20250807
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 20240322-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 20240322-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Aug 12 2024 Al Stone <ahs3@fedoraproject.org> - 20240322-1
- Update source tree to 20240322 version from upstream. NB: this update
is done in conjunction with removing s390x support due to the large
number of patches that are now rendered obsolete. Closes BZ#2138250.
- Note, too, that the upstream version of the tarball is missing two
commits and has the wrong name; discussed this with upstream and
included a patch with the two commits to correct this, and renamed
the tarballs to try to maintain consistency. So, upstream is actually
named version 20240321, but it should be 20240322 according to their
own git tree (see tag G20240322 on github).
- Removed executable bit from all the upstream source files
- Remove big-endian support, aka s390x. Closes BZ#2298855.
- Remove several 32-bit only patches that are also obsolete since they
are for unsupported architectures (thanks to pbonzini and PR#5).
- Remove PIE patches since that is currently the default (again, thanks
to pbonzini and PR#5)
* Mon Jul 29 2024 Miroslav Suchý <msuchy@redhat.com> - 20220331-10
- convert license to SPDX
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 20220331-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 20220331-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 20220331-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20220331-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20220331-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20220331-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sun Apr 3 2022 Al Stone <ahs3@redhat.com> - 20220331-3
- Correct typo in ExcludeArch syntax
* Sun Apr 3 2022 Al Stone <ahs3@redhat.com> - 20220331-2
- Stop building 32-bit architecture (i686 and armv7hl); they have been
deprecated in Fedora
* Sun Apr 3 2022 Al Stone <ahs3@redhat.com> - 20220331-1
- Update to 20220331 upstream source. Bring all the patches up to date.
- Update the results of misc test cases.
- Add in big-endian patches for PRMT, RGRT and SVKL tables (thanks, Dean!)
* Mon Mar 28 2022 Al Stone <ahs3@redhat.com> - 20211217-2
- Stop building i686; it is the only Arch that stumbles across a problem
in using varargs but since the Arch has been essentially deprecated,
take this as an opportunity to finally drop support for it.
* Fri Mar 18 2022 Al Stone <ahs3@redhat.com> - 20211217-1
- Update to 20211217 upstream source. Bring all the patches up to date.
- Rawhide use of GCC 12 introduces a new check for dangling pointers which
causes non-portable code in utdebug.c stack functions to not compile; add
a patch to disable -Wdangling-pointer=2 for the specific functions
- The AeRegionHandler() code in acpiexec call a UUID function with a buffer
too small for the UUID output string; add a patch to correct this.
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20210604-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Oct 4 2021 Al Stone <ahs3@redhat.com> - 20210730-1
- Update to 20210730 upstream source. Bring all the patches up to date.
* Tue Jul 27 2021 Al Stone <ahs3@redhat.com> - 20210604-3
- Running 'iasl -T all' would segfault when dumping the PHAT template;
fixed AcpiDmDumpPhat() by removing unnecessary assignments from patch
- Borrowed a patch from upstream to fix Unicode usage in WPBTs
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20210604-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Sun Jul 11 2021 Al Stone <ahs3@redhat.com> - 20210604-1
- Update to 20210604 source tree (please note that tarballs for versions
between 20200925 and 20210604 have been uploaded for archival reasons
but no packaged version of these has been commited to the Fedora project)
- Bring the big-endian patches up-to-date with what has been submitted
upstream (not accepted currently).
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20200925-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Oct 19 2020 Al Stone <ahs3@redhat.com> - 20200925-1
- Update to 20200925 source tree
- Completely revamp the old big-endian patches (maintainability was the goal).
This results in a much larger patch set, but each patch is more clearly used
for a specific purpose.
- The acpinames command has been deprecated upstream; acpiexec provides
replacement functionality.
* Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20200430-3
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20200430-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jun 8 2020 Al Stone <ahs3@redhat.com> - 202004306-1
- Update to 202004306 source tree, including patch refreshes
* Wed Apr 1 2020 Al Stone <ahs3@redhat.com> - 20200326-1
- Update to 20200326 source tree, including patch refreshes
- Removed a couple of patches that got included upstream
* Wed Feb 26 2020 Al Stone <ahs3@redhat.com> - 20200214-1
- Update to 20200214 source tree, including patch refreshes
- Add patch to fix up issues where strings and 4-byte quantities
get interchanged; C strings want to be null terminated now, but
AML does not so using strncpy is painful.
- Add patch for s390x specific issue (dbtest), where initializing a
string on the stack behaves a little differently
- "PCC" is a defined Register() type, but "PlatformCommChannel" was
being used instead; put it back to "PCC" as it should be in pcc.patch
- Add another big-endian patch to compensate for changes to nsutils.c
* Mon Feb 24 2020 Al Stone <ahs3@redhat.com> - 20200110-1
- Update to 20200110 source tree, including patch refreshes
* Sun Feb 23 2020 Al Stone <ahs3@redhat.com> - 20191213-1
- Update to 20191213 source tree, including patch refeshes.
- badexit patch no longer needed, so removed
- GCC10 enforces -fno-common now, catching multiple places where linkage
is not explicitly stated; added a patch to resolve the linker errors
* Sun Feb 23 2020 Al Stone <ahs3@redhat.com> - 20191018-2
- Upstream does not build from source -- this release not pushed into
the archives and noted here just for record keeping
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20190816-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Nov 23 2019 Al Stone <ahs3@redhat.com> - 20191018-1
- Update to 20191019 source tree, including patch refeshes.
* Tue Oct 29 2019 Al Stone <ahs3@redhat.com> - 20190816-1
- Update to 20190816 source tree, including patch refeshes.
- Add a patch to fix a non-zero exit from iasl -T ALL that actually succeeds
- Remove the "template" tests; they have been subsumed by aslts.sh as they
should be
* Thu Oct 24 2019 Al Stone <ahs3@redhat.com> - 20190703-1
- Update to 20190703 source tree, including patch refeshes.
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 20190509-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

View file

@ -1,49 +0,0 @@
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH ACPINAMES 1 "January 23, 2013"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh disable hyphenation
.\" .hy enable hyphenation
.\" .ad l left justify
.\" .ad b justify to both left and right margins
.\" .nf disable filling
.\" .fi enable filling
.\" .br insert line break
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
acpinames \- ACPI name space dump utility
.SH SYNOPSIS
.B acpinames
.RI <option> ...
.RI <aml-file>
.SH DESCRIPTION
This manual page briefly documents the
.B acpinames
command. The option list is taken from the acpinames interactive help.
.PP
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
.\" respectively.
.B acpinames
prints out the complete ACPI name space for an AML file.
.PP
Much more detailed documentation may be found at
http://www.acpica.org/documentation/.
.SH OPTIONS
.PP
.TP
.B \-? [<name-prefix>]
Display this help message
.SH AUTHOR
acpinames was written by Robert Moore <robert.moore@intel.com>.
.PP
This manual page was written by Al Stone <ahs3@redhat.com> for the
Fedora project (but may be used by others).

View file

@ -1,20 +0,0 @@
diff -Naur acpica-unix2-20170119/source/include/acmacros.h acpica-unix2-20170119-arm7hl/source/include/acmacros.h
--- acpica-unix2-20170119/source/include/acmacros.h 2017-01-30 17:25:54.346151952 -0700
+++ acpica-unix2-20170119-arm7hl/source/include/acmacros.h 2017-01-30 17:22:25.249388742 -0700
@@ -178,6 +178,8 @@
/* 16-bit source, 16/32/64 destination */
+#define ACPI_MOVE_16_TO_8(d, s) {(( UINT8 *)(void *)(d))[0] = ((UINT8 *)(void *)(s))[0];}
+
#define ACPI_MOVE_16_TO_16(d, s) {(( UINT8 *)(void *)(d))[0] = ((UINT8 *)(void *)(s))[0];\
(( UINT8 *)(void *)(d))[1] = ((UINT8 *)(void *)(s))[1];}
@@ -199,6 +201,7 @@
/* 64-bit source, 16/32/64 destination */
+#define ACPI_MOVE_64_TO_8(d, s) ACPI_MOVE_16_TO_8(d, s) /* Truncate to 8 */
#define ACPI_MOVE_64_TO_16(d, s) ACPI_MOVE_16_TO_16(d, s) /* Truncate to 16 */
#define ACPI_MOVE_64_TO_32(d, s) ACPI_MOVE_32_TO_32(d, s) /* Truncate to 32 */
#define ACPI_MOVE_64_TO_64(d, s) {(( UINT8 *)(void *)(d))[0] = ((UINT8 *)(void *)(s))[0];\

View file

@ -1,29 +0,0 @@
Changes in the handling of comments caused some length fields to be used
in new ways. The new way broke the existing adaptation for big endian
support; this patch repairs that adaptation.
Signed-off-by: Al Stone <ahs3@redhat.com>
Index: acpica-unix-20190405/source/compiler/aslcodegen.c
===================================================================
--- acpica-unix-20190405.orig/source/compiler/aslcodegen.c
+++ acpica-unix-20190405/source/compiler/aslcodegen.c
@@ -497,8 +497,7 @@ CgWriteTableHeader (
/* Table length. Checksum zero for now, will rewrite later */
- DWord = sizeof (ACPI_TABLE_HEADER) + Op->Asl.AmlSubtreeLength;
- ACPI_MOVE_32_TO_32(&AslGbl_TableHeader.Length, &DWord);
+ AslGbl_TableHeader.Length = sizeof (ACPI_TABLE_HEADER) + Op->Asl.AmlSubtreeLength;
/* Calculate the comment lengths for this definition block parseOp */
@@ -544,6 +543,8 @@ CgWriteTableHeader (
CvDbgPrint (" Length: %u\n", CommentLength);
}
}
+ DWord = AslGbl_TableHeader.Length;
+ ACPI_MOVE_32_TO_32(&AslGbl_TableHeader.Length, &DWord);
AslGbl_TableHeader.Checksum = 0;
Op->Asl.FinalAmlOffset = ftell (AslGbl_Files[ASL_FILE_AML_OUTPUT].Handle);

View file

@ -1,3 +1,12 @@
badcode.asl 37: Name (PATH, Buffer() {"\_SB_.PCI2._CRS"})
Warning 3046 - ^ Invalid or unknown escape sequence
badcode.asl 41: Name (ESC1, "abcdefg\x00hijklmn")
Warning 3055 - ^ Invalid Hex/Octal Escape - Non-ASCII or NULL
badcode.asl 268: QWordSpace (0xB0, ResourceConsumer, PosDecode, MinFixed, MaxFixed, 0xA5,
Error 6139 - Constant out of range ^ (0xB0, allowable: 0xC0-0xFF)
badcode.asl 25: Mutex (MTX1, 32)
Error 6125 - ^ SyncLevel must be in the range 0-15
@ -68,7 +77,7 @@ badcode.asl 97: Method (MTH2)
Remark 2119 - ^ Control Method marked Serialized (Due to use of Switch operator)
badcode.asl 97: Method (MTH2)
Warning 3115 - ^ Not all control paths return a value (MTH2)
Warning 3115 - ^ Not all control paths return a value (\MTH2)
badcode.asl 101: Switch (ToInteger (INT1))
Error 6078 - ^ No Case statements under Switch
@ -77,13 +86,13 @@ badcode.asl 120: Store (MTH2 (), Local0)
Warning 3144 - ^ Method Local is set but never used (Local0)
badcode.asl 120: Store (MTH2 (), Local0)
Warning 3122 - ^ Called method may not always return a value
Warning 3122 - ^ Called method may not always return a value (\MTH2)
badcode.asl 126: Method (MTH5) {Store (MTH4(), Local0)}
Warning 3144 - Method Local is set but never used ^ (Local0)
badcode.asl 126: Method (MTH5) {Store (MTH4(), Local0)}
Error 6080 - Called method returns no value ^
Error 6080 - Called method returns no value ^ (\MTH4)
badcode.asl 132: Name (_HID, "*PNP0C0A") // Illegal leading asterisk
Error 6061 - Invalid leading asterisk ^ (*PNP0C0A)
@ -146,7 +155,7 @@ badcode.asl 197: Return ("Unexpected Return Value")
Warning 3104 - Reserved method should not return a value ^ (_Q22)
badcode.asl 203: Device (EC)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
badcode.asl 205: Method (_REG, 2)
Warning 3079 - ^ _REG has no corresponding Operation Region
@ -256,11 +265,11 @@ Warning 3144 - ^ Method Local is set but never used
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version VVVVVVVV
Copyright (c) 2000 - 2019 Intel Corporation
Copyright (c) 2000 - 2023 Intel Corporation
Ignoring all errors, forcing AML file generation
ASL Input: badcode.asl - 11587 bytes 81 keywords 408 source lines
ASL Input: badcode.asl - 11588 bytes 81 keywords 0 source lines
AML Output: badcode.aml - 1195 bytes 20 opcodes 61 named objects
Compilation successful. 45 Errors, 29 Warnings, 11 Remarks, 16 Optimizations, 1 Constants Folded
Compilation successful. 46 Errors, 28 Warnings, 11 Remarks, 16 Optimizations, 1 Constants Folded

View file

@ -1,18 +0,0 @@
Updated versions of upstream often contain fixes that were not seen
in the original big-endian patch; we try to capture those here.
Signed-off-by: Al Stone <ahs3@redhat.com>
diff -Naur acpica-unix2-20170929.orig/source/compiler/asllookup.c acpica-unix2-20170929/source/compiler/asllookup.c
--- acpica-unix2-20170929.orig/source/compiler/asllookup.c 2017-10-09 12:26:25.893508481 -0600
+++ acpica-unix2-20170929/source/compiler/asllookup.c 2017-10-17 11:45:42.230763844 -0600
@@ -249,7 +249,8 @@
* ACPI names and are typically not referenced since they are meant
* to be called by the host OS.
*/
- if (Node->Name.Ascii[0] == '_')
+ ACPI_MOVE_32_TO_32(&tmp.Ascii, Node->Name.Ascii);
+ if (tmp.Ascii[0] == '_')
{
return (AE_OK);
}

File diff suppressed because it is too large Load diff

View file

@ -1,24 +1,53 @@
converterSample.asl 15: Name (b, 5)
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (B___)
converterSample.asl 16: Name(p008, Package()
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (P008)
converterSample.asl 48: Name(b,0);
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (B___)
converterSample.asl 53: Name (a,
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (A___)
converterSample.asl 68: Name (a1, 0x04)
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (A1__)
converterSample.asl 15: Name (b, 5)
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (B___)
converterSample.asl 16: Name(p008, Package()
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (P008)
converterSample.asl 37: Method(MAIN) {
Remark 2120 - ^ Control Method should be made Serialized (due to creation of named objects within)
Remark 2120 - ^ Control Method should be made Serialized due to creation of named objects within (\MAIN)
converterSample.asl 48: Name(b,0);
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (B___)
converterSample.asl 48: Name(b,0);
Remark 2089 - Object is not referenced ^ (Name [B___] is within a method [MAIN])
converterSample.asl 53: Name (a,
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (A___)
converterSample.asl 65: Method(SCOP)
Remark 2120 - ^ Control Method should be made Serialized (due to creation of named objects within)
Remark 2120 - ^ Control Method should be made Serialized due to creation of named objects within (\SCOP)
converterSample.asl 68: Name (a1, 0x04)
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (A1__)
converterSample.asl 68: Name (a1, 0x04)
Remark 2089 - Object is not referenced ^ (Name [A1__] is within a method [SCOP])
converterSample.asl 76: Offset(0),//c37
Remark 2158 - ^ Unnecessary/redundant use of Offset operator
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version VVVVVVVV
Copyright (c) 2000 - 2019 Intel Corporation
Copyright (c) 2000 - 2023 Intel Corporation
ASL Input: converterSample.asl - 1968 bytes 11 keywords 85 source lines
AML Output: converterSample.aml - 180 bytes 2 opcodes 9 named objects
Ignoring all errors, forcing AML file generation
Compilation successful. 0 Errors, 0 Warnings, 5 Remarks, 12 Optimizations, 1 Constants Folded
ASL Input: converterSample.asl - 1968 bytes 11 keywords 0 source lines
AML Output: converterSample.aml - 184 bytes 2 opcodes 9 named objects
Compilation successful. 0 Errors, 0 Warnings, 9 Remarks, 9 Optimizations

View file

@ -1,99 +0,0 @@
From 987a3b5cf7175916e2a4b6ea5b8e70f830dfe732 Mon Sep 17 00:00:00 2001
From: Seunghun Han <kkamagui@gmail.com>
Date: Wed, 19 Jul 2017 16:47:53 +0900
Subject: [PATCH] acpi: acpica: fix acpi operand cache leak in dswstate.c
I found an ACPI cache leak in ACPI early termination and boot continuing case.
When early termination occurs due to malicious ACPI table, Linux kernel
terminates ACPI function and continues to boot process. While kernel terminates
ACPI function, kmem_cache_destroy() reports Acpi-Operand cache leak.
Boot log of ACPI operand cache leak is as follows:
>[ 0.585957] ACPI: Added _OSI(Module Device)
>[ 0.587218] ACPI: Added _OSI(Processor Device)
>[ 0.588530] ACPI: Added _OSI(3.0 _SCP Extensions)
>[ 0.589790] ACPI: Added _OSI(Processor Aggregator Device)
>[ 0.591534] ACPI Error: Illegal I/O port address/length above 64K: C806E00000004002/0x2 (20170303/hwvalid-155)
>[ 0.594351] ACPI Exception: AE_LIMIT, Unable to initialize fixed events (20170303/evevent-88)
>[ 0.597858] ACPI: Unable to start the ACPI Interpreter
>[ 0.599162] ACPI Error: Could not remove SCI handler (20170303/evmisc-281)
>[ 0.601836] kmem_cache_destroy Acpi-Operand: Slab cache still has objects
>[ 0.603556] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.12.0-rc5 #26
>[ 0.605159] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
>[ 0.609177] Call Trace:
>[ 0.610063] ? dump_stack+0x5c/0x81
>[ 0.611118] ? kmem_cache_destroy+0x1aa/0x1c0
>[ 0.612632] ? acpi_sleep_proc_init+0x27/0x27
>[ 0.613906] ? acpi_os_delete_cache+0xa/0x10
>[ 0.617986] ? acpi_ut_delete_caches+0x3f/0x7b
>[ 0.619293] ? acpi_terminate+0xa/0x14
>[ 0.620394] ? acpi_init+0x2af/0x34f
>[ 0.621616] ? __class_create+0x4c/0x80
>[ 0.623412] ? video_setup+0x7f/0x7f
>[ 0.624585] ? acpi_sleep_proc_init+0x27/0x27
>[ 0.625861] ? do_one_initcall+0x4e/0x1a0
>[ 0.627513] ? kernel_init_freeable+0x19e/0x21f
>[ 0.628972] ? rest_init+0x80/0x80
>[ 0.630043] ? kernel_init+0xa/0x100
>[ 0.631084] ? ret_from_fork+0x25/0x30
>[ 0.633343] vgaarb: loaded
>[ 0.635036] EDAC MC: Ver: 3.0.0
>[ 0.638601] PCI: Probing PCI hardware
>[ 0.639833] PCI host bridge to bus 0000:00
>[ 0.641031] pci_bus 0000:00: root bus resource [io 0x0000-0xffff]
> ... Continue to boot and log is omitted ...
I analyzed this memory leak in detail and found acpi_ds_obj_stack_pop_and_
delete() function miscalculated the top of the stack. acpi_ds_obj_stack_push()
function uses walk_state->operand_index for start position of the top, but
acpi_ds_obj_stack_pop_and_delete() function considers index 0 for it.
Therefore, this causes acpi operand memory leak.
This cache leak causes a security threat because an old kernel (<= 4.9) shows
memory locations of kernel functions in stack dump. Some malicious users
could use this information to neutralize kernel ASLR.
I made a patch to fix ACPI operand cache leak.
Signed-off-by: Seunghun Han <kkamagui@gmail.com>
Github-Location: https://github.com/acpica/acpica/pull/295/commits/987a3b5cf7175916e2a4b6ea5b8e70f830dfe732
---
source/components/dispatcher/dsutils.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
Index: acpica-unix2-20181213/source/components/dispatcher/dsutils.c
===================================================================
--- acpica-unix2-20181213.orig/source/components/dispatcher/dsutils.c
+++ acpica-unix2-20181213/source/components/dispatcher/dsutils.c
@@ -759,6 +759,8 @@ AcpiDsCreateOperands (
ACPI_PARSE_OBJECT *Arguments[ACPI_OBJ_NUM_OPERANDS];
UINT32 ArgCount = 0;
UINT32 Index = WalkState->NumOperands;
+ UINT32 PrevNumOperands = WalkState->NumOperands;
+ UINT32 NewNumOperands;
UINT32 i;
@@ -791,6 +793,7 @@ AcpiDsCreateOperands (
/* Create the interpreter arguments, in reverse order */
+ NewNumOperands = Index;
Index--;
for (i = 0; i < ArgCount; i++)
{
@@ -818,7 +821,11 @@ Cleanup:
* pop everything off of the operand stack and delete those
* objects
*/
- AcpiDsObjStackPopAndDelete (ArgCount, WalkState);
+ WalkState->NumOperands = i;
+ AcpiDsObjStackPopAndDelete (NewNumOperands, WalkState);
+
+ /* Restore operand count */
+ WalkState->NumOperands = PrevNumOperands;
ACPI_EXCEPTION ((AE_INFO, Status, "While creating Arg %u", Index));
return_ACPI_STATUS (Status);

View file

@ -1,216 +0,0 @@
From 4a0243ecb4c94e2d73510d096c5ea4d0711fc6c0 Mon Sep 17 00:00:00 2001
From: Seunghun Han <kkamagui@gmail.com>
Date: Fri, 23 Jun 2017 14:19:48 +0900
Subject: [PATCH] acpi: acpica: fix acpi parse and parseext cache leaks
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
I'm Seunghun Han, and I work for National Security Research Institute of
South Korea.
I have been doing a research on ACPI and found an ACPI cache leak in ACPI
early abort cases.
Boot log of ACPI cache leak is as follows:
[ 0.352414] ACPI: Added _OSI(Module Device)
[ 0.353182] ACPI: Added _OSI(Processor Device)
[ 0.353182] ACPI: Added _OSI(3.0 _SCP Extensions)
[ 0.353182] ACPI: Added _OSI(Processor Aggregator Device)
[ 0.356028] ACPI: Unable to start the ACPI Interpreter
[ 0.356799] ACPI Error: Could not remove SCI handler (20170303/evmisc-281)
[ 0.360215] kmem_cache_destroy Acpi-State: Slab cache still has objects
[ 0.360648] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G W
4.12.0-rc4-next-20170608+ #10
[ 0.361273] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS
VirtualBox 12/01/2006
[ 0.361873] Call Trace:
[ 0.362243] ? dump_stack+0x5c/0x81
[ 0.362591] ? kmem_cache_destroy+0x1aa/0x1c0
[ 0.362944] ? acpi_sleep_proc_init+0x27/0x27
[ 0.363296] ? acpi_os_delete_cache+0xa/0x10
[ 0.363646] ? acpi_ut_delete_caches+0x6d/0x7b
[ 0.364000] ? acpi_terminate+0xa/0x14
[ 0.364000] ? acpi_init+0x2af/0x34f
[ 0.364000] ? __class_create+0x4c/0x80
[ 0.364000] ? video_setup+0x7f/0x7f
[ 0.364000] ? acpi_sleep_proc_init+0x27/0x27
[ 0.364000] ? do_one_initcall+0x4e/0x1a0
[ 0.364000] ? kernel_init_freeable+0x189/0x20a
[ 0.364000] ? rest_init+0xc0/0xc0
[ 0.364000] ? kernel_init+0xa/0x100
[ 0.364000] ? ret_from_fork+0x25/0x30
I analyzed this memory leak in detail. I found that “Acpi-State” cache and
“Acpi-Parse” cache were merged because the size of cache objects was same
slab cache size.
I finally found “Acpi-Parse” cache and “Acpi-ParseExt” cache were leaked
using SLAB_NEVER_MERGE flag in kmem_cache_create() function.
Real ACPI cache leak point is as follows:
[ 0.360101] ACPI: Added _OSI(Module Device)
[ 0.360101] ACPI: Added _OSI(Processor Device)
[ 0.360101] ACPI: Added _OSI(3.0 _SCP Extensions)
[ 0.361043] ACPI: Added _OSI(Processor Aggregator Device)
[ 0.364016] ACPI: Unable to start the ACPI Interpreter
[ 0.365061] ACPI Error: Could not remove SCI handler (20170303/evmisc-281)
[ 0.368174] kmem_cache_destroy Acpi-Parse: Slab cache still has objects
[ 0.369332] CPU: 1 PID: 1 Comm: swapper/0 Tainted: G W
4.12.0-rc4-next-20170608+ #8
[ 0.371256] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS
VirtualBox 12/01/2006
[ 0.372000] Call Trace:
[ 0.372000] ? dump_stack+0x5c/0x81
[ 0.372000] ? kmem_cache_destroy+0x1aa/0x1c0
[ 0.372000] ? acpi_sleep_proc_init+0x27/0x27
[ 0.372000] ? acpi_os_delete_cache+0xa/0x10
[ 0.372000] ? acpi_ut_delete_caches+0x56/0x7b
[ 0.372000] ? acpi_terminate+0xa/0x14
[ 0.372000] ? acpi_init+0x2af/0x34f
[ 0.372000] ? __class_create+0x4c/0x80
[ 0.372000] ? video_setup+0x7f/0x7f
[ 0.372000] ? acpi_sleep_proc_init+0x27/0x27
[ 0.372000] ? do_one_initcall+0x4e/0x1a0
[ 0.372000] ? kernel_init_freeable+0x189/0x20a
[ 0.372000] ? rest_init+0xc0/0xc0
[ 0.372000] ? kernel_init+0xa/0x100
[ 0.372000] ? ret_from_fork+0x25/0x30
[ 0.388039] kmem_cache_destroy Acpi-ParseExt: Slab cache still has objects
[ 0.389063] CPU: 1 PID: 1 Comm: swapper/0 Tainted: G W
4.12.0-rc4-next-20170608+ #8
[ 0.390557] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS
VirtualBox 12/01/2006
[ 0.392000] Call Trace:
[ 0.392000] ? dump_stack+0x5c/0x81
[ 0.392000] ? kmem_cache_destroy+0x1aa/0x1c0
[ 0.392000] ? acpi_sleep_proc_init+0x27/0x27
[ 0.392000] ? acpi_os_delete_cache+0xa/0x10
[ 0.392000] ? acpi_ut_delete_caches+0x6d/0x7b
[ 0.392000] ? acpi_terminate+0xa/0x14
[ 0.392000] ? acpi_init+0x2af/0x34f
[ 0.392000] ? __class_create+0x4c/0x80
[ 0.392000] ? video_setup+0x7f/0x7f
[ 0.392000] ? acpi_sleep_proc_init+0x27/0x27
[ 0.392000] ? do_one_initcall+0x4e/0x1a0
[ 0.392000] ? kernel_init_freeable+0x189/0x20a
[ 0.392000] ? rest_init+0xc0/0xc0
[ 0.392000] ? kernel_init+0xa/0x100
[ 0.392000] ? ret_from_fork+0x25/0x30
When early abort is occurred due to invalid ACPI information, Linux kernel
terminates ACPI by calling acpi_terminate() function. The function calls
acpi_ut_delete_caches() function to delete local caches (acpi_gbl_namespace_
cache, state_cache, operand_cache, ps_node_cache, ps_node_ext_cache).
But the deletion codes in acpi_ut_delete_caches() function only delete
slab caches using kmem_cache_destroy() function, therefore the cache
objects should be flushed before acpi_ut_delete_caches() function.
“Acpi-Parse” cache and “Acpi-ParseExt” cache are used in an AML parse
function, acpi_ps_parse_loop(). The function should have flush codes to
handle an error state due to invalid AML codes.
This cache leak has a security threat because an old kernel (<= 4.9) shows
memory locations of kernel functions in stack dump. Some malicious users
could use this information to neutralize kernel ASLR.
To fix ACPI cache leak for enhancing security, I made a patch which has
flush codes in acpi_ps_parse_loop() function.
I hope that this patch improves the security of Linux kernel.
Thank you.
Signed-off-by: Seunghun Han <kkamagui@gmail.com>
Github-Location: https://github.com/acpica/acpica/pull/278/commits/4a0243ecb4c94e2d73510d096c5ea4d0711fc6c0
---
source/components/parser/psobject.c | 44 ++++++++++++++-----------------------
1 file changed, 16 insertions(+), 28 deletions(-)
Index: acpica-unix2-20180531/source/components/parser/psobject.c
===================================================================
--- acpica-unix2-20180531.orig/source/components/parser/psobject.c
+++ acpica-unix2-20180531/source/components/parser/psobject.c
@@ -709,7 +709,8 @@ AcpiPsCompleteFinalOp (
ACPI_PARSE_OBJECT *Op,
ACPI_STATUS Status)
{
- ACPI_STATUS Status2;
+ ACPI_STATUS ReturnStatus = AE_OK;
+ BOOLEAN Ascending = TRUE;
ACPI_FUNCTION_TRACE_PTR (PsCompleteFinalOp, WalkState);
@@ -726,7 +727,7 @@ AcpiPsCompleteFinalOp (
{
if (Op)
{
- if (WalkState->AscendingCallback != NULL)
+ if (Ascending && WalkState->AscendingCallback != NULL)
{
WalkState->Op = Op;
WalkState->OpInfo = AcpiPsGetOpcodeInfo (Op->Common.AmlOpcode);
@@ -745,41 +746,28 @@ AcpiPsCompleteFinalOp (
if (Status == AE_CTRL_TERMINATE)
{
- Status = AE_OK;
-
- /* Clean up */
- do
- {
- if (Op)
- {
- Status2 = AcpiPsCompleteThisOp (WalkState, Op);
- if (ACPI_FAILURE (Status2))
- {
- return_ACPI_STATUS (Status2);
- }
- }
-
- AcpiPsPopScope (&(WalkState->ParserState), &Op,
- &WalkState->ArgTypes, &WalkState->ArgCount);
-
- } while (Op);
-
- return_ACPI_STATUS (Status);
+ Ascending = FALSE;
+ ReturnStatus = AE_CTRL_TERMINATE;
}
else if (ACPI_FAILURE (Status))
{
/* First error is most important */
- (void) AcpiPsCompleteThisOp (WalkState, Op);
- return_ACPI_STATUS (Status);
+ Ascending = FALSE;
+ ReturnStatus = Status;
}
}
- Status2 = AcpiPsCompleteThisOp (WalkState, Op);
- if (ACPI_FAILURE (Status2))
+ Status = AcpiPsCompleteThisOp (WalkState, Op);
+ if (ACPI_FAILURE (Status))
{
- return_ACPI_STATUS (Status2);
+ Ascending = FALSE;
+ if (ACPI_SUCCESS (ReturnStatus) ||
+ ReturnStatus == AE_CTRL_TERMINATE)
+ {
+ ReturnStatus = Status;
+ }
}
}
@@ -788,5 +776,5 @@ AcpiPsCompleteFinalOp (
} while (Op);
- return_ACPI_STATUS (Status);
+ return_ACPI_STATUS (ReturnStatus);
}

View file

@ -67,11 +67,11 @@ Github-Location: https://github.com/acpica/acpica/pull/296/commits/37f2c716f2c6a
source/components/namespace/nseval.c | 10 ++++++++++
1 file changed, 10 insertions(+)
Index: acpica-unix2-20181213/source/components/namespace/nseval.c
Index: acpica-unix2-20240321/source/components/namespace/nseval.c
===================================================================
--- acpica-unix2-20181213.orig/source/components/namespace/nseval.c
+++ acpica-unix2-20181213/source/components/namespace/nseval.c
@@ -336,6 +336,16 @@ AcpiNsEvaluate (
--- acpica-unix2-20240321.orig/source/components/namespace/nseval.c
+++ acpica-unix2-20240321/source/components/namespace/nseval.c
@@ -329,6 +329,16 @@ AcpiNsEvaluate (
Info->ReturnObject = NULL;
}
}

25
dangling-ptr.patch Normal file
View file

@ -0,0 +1,25 @@
Index: acpica-unix2-20240321/source/components/utilities/utdebug.c
===================================================================
--- acpica-unix2-20240321.orig/source/components/utilities/utdebug.c
+++ acpica-unix2-20240321/source/components/utilities/utdebug.c
@@ -58,6 +58,10 @@ static const char *AcpiGbl_Fun
static const char *AcpiGbl_FunctionExitPrefix = "----Exit-";
+#if defined(__GNUC__) && (__GNUC__ > 11)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdangling-pointer"
+#endif
/*******************************************************************************
*
* FUNCTION: AcpiUtInitStackPtrTrace
@@ -120,6 +124,9 @@ AcpiUtTrackStackPtr (
AcpiGbl_DeepestNesting = AcpiGbl_NestingLevel;
}
}
+#if defined(__GNUC__) && (__GNUC__ > 11)
+#pragma GCC diagnostic pop
+#endif
/*******************************************************************************

40
dbtest.patch Normal file
View file

@ -0,0 +1,40 @@
On s390, GCC does not like the string initialization in this case. When
ValueToWrite is initialized this way, GCC tries to copy the entire string
into an ACPI_OBJECT instead of just the pointer (see the use in the call
to memcpy()). So, move the init so GCC recognizes that ValueToWrite is
only a pointer, and not a whole string that needs to be moved.
Index: acpica-unix2-20240321/source/components/debugger/dbtest.c
===================================================================
--- acpica-unix2-20240321.orig/source/components/debugger/dbtest.c
+++ acpica-unix2-20240321/source/components/debugger/dbtest.c
@@ -719,9 +719,10 @@ AcpiDbTestStringType (
ACPI_OBJECT *Temp1 = NULL;
ACPI_OBJECT *Temp2 = NULL;
ACPI_OBJECT *Temp3 = NULL;
- char *ValueToWrite = "Test String from AML Debugger";
+ char *ValueToWrite = NULL;
ACPI_OBJECT WriteValue;
ACPI_STATUS Status;
+ const char *TestStr = "Test String from AML Debugger";
/* Read the original value */
@@ -737,6 +738,9 @@ AcpiDbTestStringType (
/* Write a new value */
+ ValueToWrite = AcpiOsAllocateZeroed(strlen(TestStr)+1);
+ strncpy(ValueToWrite, TestStr, strlen(TestStr)+1);
+
WriteValue.Type = ACPI_TYPE_STRING;
WriteValue.String.Length = strlen (ValueToWrite);
WriteValue.String.Pointer = ValueToWrite;
@@ -790,6 +794,7 @@ Exit:
if (Temp1) {AcpiOsFree (Temp1);}
if (Temp2) {AcpiOsFree (Temp2);}
if (Temp3) {AcpiOsFree (Temp3);}
+ if (ValueToWrite) {AcpiOsFree (ValueToWrite);}
return (Status);
}

View file

@ -1,61 +0,0 @@
Introduce build hardening flags for f23
From: Al Stone <ahs3@redhat.com>
---
generate/unix/Makefile.config | 2 ++
generate/unix/iasl/Makefile | 13 +++++++------
2 files changed, 9 insertions(+), 6 deletions(-)
Index: acpica-unix2-20180209/generate/unix/Makefile.config
===================================================================
--- acpica-unix2-20180209.orig/generate/unix/Makefile.config
+++ acpica-unix2-20180209/generate/unix/Makefile.config
@@ -182,6 +182,8 @@ ifneq ($(NOFORTIFY),TRUE)
OPT_CFLAGS += -D_FORTIFY_SOURCE=2
endif
+OPT_CFLAGS += -fPIC -pie
+
CFLAGS += \
-D$(HOST)\
-D_GNU_SOURCE\
Index: acpica-unix2-20180209/generate/unix/iasl/Makefile
===================================================================
--- acpica-unix2-20180209.orig/generate/unix/iasl/Makefile
+++ acpica-unix2-20180209/generate/unix/iasl/Makefile
@@ -344,26 +344,27 @@ $(OBJDIR)/prparserparse.c $(OBJDIR)/prpa
# Cannot use the common compile warning flags since the C files are created
# by the utilities above and they are not necessarily ANSI C, etc.
#
+HARDENING_FLAGS = -fPIC -pie
$(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c
@echo "- " "Intermediate" $<
- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ @$(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c
@echo "- " "Intermediate" $<
- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ @$(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c
@echo "- " "Intermediate" $<
- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ @$(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c
@echo "- " "Intermediate" $<
- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ @$(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c
@echo "- " "Intermediate" $<
- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ @$(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/prparserparse.o : $(OBJDIR)/prparserparse.c
@echo "- " "Intermediate" $<
- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ @$(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<

View file

@ -1,31 +0,0 @@
From 7670c56ebe004e698551635f9c5d48a1794066dd Mon Sep 17 00:00:00 2001
From: Al Stone <ahs3@ahs3.net>
Date: Wed, 19 Dec 2018 16:52:41 -0700
Subject: [PATCH] Correct DSDT Address field in FACP tables
The FADT allows either the DSDT Address or XDSDT Address field to be
zero. However, the table definition used by the table compiler still
requires the DSDT Address to be non-zero, which is not correct. So,
remove the DT_NON_ZERO flag from the field.
Signed-off-by: Al Stone <ahs3@redhat.com>
---
source/common/dmtbinfo.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/common/dmtbinfo.c b/source/common/dmtbinfo.c
index 2e1c54f84..07d3ce099 100644
--- a/source/common/dmtbinfo.c
+++ b/source/common/dmtbinfo.c
@@ -292,7 +292,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoFacs[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoFadt1[] =
{
{ACPI_DMT_UINT32, ACPI_FADT_OFFSET (Facs), "FACS Address", 0},
- {ACPI_DMT_UINT32, ACPI_FADT_OFFSET (Dsdt), "DSDT Address", DT_NON_ZERO},
+ {ACPI_DMT_UINT32, ACPI_FADT_OFFSET (Dsdt), "DSDT Address", 0},
{ACPI_DMT_UINT8, ACPI_FADT_OFFSET (Model), "Model", 0},
{ACPI_DMT_FADTPM, ACPI_FADT_OFFSET (PreferredProfile), "PM Profile", 0},
{ACPI_DMT_UINT16, ACPI_FADT_OFFSET (SciInterrupt), "SCI Interrupt", 0},
--
2.20.1

View file

@ -1,65 +0,0 @@
diff -Naur acpica-unix2-20190108/source/common/dmrestag.c acpica-unix2-20190108-patch/source/common/dmrestag.c
--- acpica-unix2-20190108/source/common/dmrestag.c 2019-01-08 14:10:31.000000000 -0700
+++ acpica-unix2-20190108-patch/source/common/dmrestag.c 2019-05-10 13:57:10.768398838 -0600
@@ -710,10 +710,25 @@
* end up in the final compiled AML, it's just an appearance issue for the
* disassembled code.
*/
- Pathname[strlen (Pathname) - ACPI_NAME_SIZE] = 0;
- strncat (Pathname, ResourceNode->Name.Ascii, ACPI_NAME_SIZE);
- strcat (Pathname, ".");
- strncat (Pathname, Tag, ACPI_NAME_SIZE);
+ {
+ /*
+ * GCC9 forces some contortions when non-null-terminated char
+ * strings are being used; using strncat() might be simpler,
+ * but the assumption that the string is null-terminated gets
+ * checked and AML does not always guarantee that is true.
+ */
+ char *tmp;
+ unsigned char dot = '.';
+
+ Pathname[strlen (Pathname) - ACPI_NAME_SIZE] = 0;
+ tmp = Pathname + strlen(Pathname);
+ memcpy (tmp, ResourceNode->Name.Ascii, ACPI_NAME_SIZE);
+ tmp += ACPI_NAME_SIZE;
+ memcpy (tmp, &dot, 1);
+ tmp++;
+ memcpy (tmp, Tag, ACPI_NAME_SIZE);
+ tmp += ACPI_NAME_SIZE;
+ }
/* Internalize the namepath to AML format */
diff -Naur acpica-unix2-20190108/source/compiler/aslcodegen.c acpica-unix2-20190108-patch/source/compiler/aslcodegen.c
--- acpica-unix2-20190108/source/compiler/aslcodegen.c 2019-05-10 13:40:12.827411487 -0600
+++ acpica-unix2-20190108-patch/source/compiler/aslcodegen.c 2019-05-10 13:25:34.667850614 -0600
@@ -450,11 +450,11 @@
*/
if (AcpiGbl_CaptureComments)
{
- strncpy(AcpiGbl_TableSig, Child->Asl.Value.String, ACPI_NAME_SIZE);
+ memcpy(AcpiGbl_TableSig, Child->Asl.Value.String, ACPI_NAME_SIZE);
Child->Asl.Value.String = ACPI_SIG_XXXX;
}
- strncpy (AslGbl_TableHeader.Signature, Child->Asl.Value.String, ACPI_NAME_SIZE);
+ memcpy (AslGbl_TableHeader.Signature, Child->Asl.Value.String, ACPI_NAME_SIZE);
/* Revision */
@@ -471,12 +471,12 @@
/* OEMID */
Child = Child->Asl.Next;
- strncpy (AslGbl_TableHeader.OemId, Child->Asl.Value.String, ACPI_OEM_ID_SIZE);
+ memcpy (AslGbl_TableHeader.OemId, Child->Asl.Value.String, ACPI_OEM_ID_SIZE);
/* OEM TableID */
Child = Child->Asl.Next;
- strncpy (AslGbl_TableHeader.OemTableId, Child->Asl.Value.String, ACPI_OEM_TABLE_ID_SIZE);
+ memcpy (AslGbl_TableHeader.OemTableId, Child->Asl.Value.String, ACPI_OEM_TABLE_ID_SIZE);
/* OEM Revision */

View file

@ -1,34 +1,57 @@
ACPI Warning: NsLookup: Type mismatch on GIDX (RegionField), searching for (Region) (20190509/nsaccess-728)
ACPI Warning: NsLookup: Type mismatch on IDX2 (RegionField), searching for (Region) (20190509/nsaccess-728)
ACPI Warning: NsLookup: Type mismatch on INDX (RegionField), searching for (Region) (20190509/nsaccess-728)
ACPI Warning: NsLookup: Type mismatch on AIDX (RegionField), searching for (Region) (20190509/nsaccess-728)
ACPI Warning: NsLookup: Type mismatch on C05D (RegionField), searching for (Region) (20190509/nsaccess-728)
ACPI Warning: NsLookup: Type mismatch on INDX (RegionField), searching for (Region) (20190509/nsaccess-728)
ACPI Warning: NsLookup: Type mismatch on IND2 (RegionField), searching for (Region) (20190509/nsaccess-728)
grammar.asl 522: NAME (ESC1, "abcdefg\x00hijklmn")
Warning 3055 - ^ Invalid Hex/Octal Escape - Non-ASCII or NULL
grammar.asl 523: NAME (ESC2, "abcdefg\000hijklmn")
Warning 3055 - ^ Invalid Hex/Octal Escape - Non-ASCII or NULL
grammar.asl 552: IRQNoFlags(xxxt){3,4,10,11}
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (XXXT)
grammar.asl 566: Name(Bxxx,0xFFFFFFFF)
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (BXXX)
grammar.asl 6478: Name (_CRS, Buffer(26) {"\_SB_.PCI2._CRS..........."})
Warning 3046 - Invalid or unknown escape sequence ^
grammar.asl 120: Device (A1)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 135: Device (A2)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 145: Device (A3)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 155: Device (A4)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 171: Device (IRES)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 171: Device (IRES)
Warning 3141 - ^ Missing dependency (Device has a _SRS, missing a _PRS, required)
grammar.asl 171: Device (IRES)
Remark 2141 - ^ Missing dependency (Device has a _SRS, no corresponding _DIS)
grammar.asl 199: Name (_NPK, Package ()
Warning 3133 - ^ Unknown reserved name (_NPK)
grammar.asl 208: Device (RES)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 208: Device (RES)
Remark 2141 - ^ Missing dependency (Device has a _SRS, no corresponding _DIS)
grammar.asl 247: Name (PRT0, ResourceTemplate ()
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\RES._CRS)
grammar.asl 399: CreateByteField (PRT0, R000._ASZ, RSIZ)
Remark 2089 - Object is not referenced ^ (Name [RSIZ] is within a method [_CRS])
grammar.asl 406: Name (BUF0, ResourceTemplate ()
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\RES._PRS)
grammar.asl 513: Name (_STR, Unicode ("test"))
Remark 2089 - ^ Object is not referenced (Name [_STR] is within a method [TCOP])
@ -41,9 +64,18 @@ Warning 3055 - ^ Invalid Hex/Octal Escape - Non-
grammar.asl 523: NAME (ESC2, "abcdefg\000hijklmn")
Warning 3055 - ^ Invalid Hex/Octal Escape - Non-ASCII or NULL
grammar.asl 552: IRQNoFlags(xxxt){3,4,10,11}
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (XXXT)
grammar.asl 566: Name(Bxxx,0xFFFFFFFF)
Remark 2182 - ^ At least one lower case letter found in NameSeg, ASL is case insensitive - converting to upper case (BXXX)
grammar.asl 620: RCIV (Subtract (Arg0, 1))
Remark 2098 - ^ Recursive method call (RCIV)
grammar.asl 631: Processor(CPU0,0x0,0xFFFFFFFF,0x0) {}
Warning 3168 - ^ Legacy Processor() keyword detected. Use Device() keyword instead.
grammar.asl 668: Method(SMWE, 4)
Remark 2146 - ^ Method Argument is never used (Arg0)
@ -71,17 +103,29 @@ Remark 2146 - ^ Method Argument is never used (Arg3)
grammar.asl 701: CreateField (\_SB_.SBUF, 148, 96, FLDV)
Remark 2089 - Object is not referenced ^ (Name [FLDV] is within a method [_INI])
grammar.asl 705: Device(PCI0)
Warning 3073 - Multiple types ^ (Device object requires either a _HID or _ADR, but not both)
grammar.asl 705: Device(PCI0)
Warning 3141 - Missing dependency ^ (Device has a _SRS, missing a _PRS, required)
grammar.asl 705: Device(PCI0)
Remark 2141 - Missing dependency ^ (Device has a _SRS, no corresponding _DIS)
grammar.asl 712: Name(PRT0, ResourceTemplate() {
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.PCI0._CRS)
grammar.asl 733: Method(_SRS)
Warning 3102 - ^ Reserved method has too few arguments (_SRS requires 1)
grammar.asl 738: Device(EIO)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 822: If(LNot(SMRE(0x09,0x17,Local2,RefOf(Local3)))){
Warning 3144 - Method Local is set but never used ^ (Local3)
grammar.asl 913: Device (DEV1)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 963: Divide (Local0, Local1, Local3)
Warning 3144 - Method Local is set but never used ^ (Local3)
@ -101,9 +145,21 @@ Remark 2146 - ^ Method Argument is never used (Arg0)
grammar.asl 1300: Name(BUFR, Buffer (Local0) {})
Remark 2089 - ^ Object is not referenced (Name [BUFR] is within a method [OBJ1])
grammar.asl 1300: Name(BUFR, Buffer (Local0) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ1)
grammar.asl 1301: Name(BUF1, Buffer (4) {1,2,3,4})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ1)
grammar.asl 1302: Name(BUF2, Buffer (4) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ1)
grammar.asl 1307: Alias (MTX1, MTX2)
Remark 2089 - Object is not referenced ^ (Name [MTX2] is within a method [OBJ1])
grammar.asl 1321: Name (BUF2, Buffer (128) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\FLDS)
grammar.asl 1329: CreateField (BUF2, 148, 96, FLD3)
Remark 2089 - Object is not referenced ^ (Name [FLD3] is within a method [FLDS])
@ -113,9 +169,24 @@ Warning 3038 - ^ Truncating 64-bit constant
grammar.asl 1396: if (LNotEqual (Local0, 0x1234567887654321))
Warning 3038 - Truncating 64-bit constant found in 32-bit table ^
grammar.asl 1445: Name (BUFO, Buffer (32) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ2)
grammar.asl 1448: OperationRegion (OPR2, SystemMemory, Arg0, 256)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ2)
grammar.asl 1462: BankField (OPR2, BNK2, 0, ByteAcc, NoLock, Preserve)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ2)
grammar.asl 1469: IndexField (IDX2, DAT2, ByteAcc, NoLock, Preserve)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ2)
grammar.asl 1476: SizeOf (BUFO)
Error 6114 - ^ Result is not used, operator has no effect
grammar.asl 1490: Event (EVT2)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\OBJ2)
grammar.asl 1496: Alias (MTX2, MTXA)
Remark 2089 - Object is not referenced ^ (Name [MTXA] is within a method [OBJ2])
@ -147,19 +218,28 @@ grammar.asl 1792: Store (LLessEqual (0xFFFFFFFF, 0x11111111), Local5)
Warning 3144 - Method Local is set but never used ^ (Local5)
grammar.asl 1821: Method (COND)
Warning 3115 - ^ Not all control paths return a value (COND)
Warning 3115 - ^ Not all control paths return a value (\COND)
grammar.asl 1916: Name (BBUF, Buffer() {0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\REFS)
grammar.asl 1918: Name (NEST, Package ()
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\REFS)
grammar.asl 1930: Store (RefOf (MAIN), Local5)
Warning 3144 - Method Local is set but never used ^ (Local5)
grammar.asl 2005: Device (IFEL)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2162: Device (NOSV)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2168: Name (WRD, 0x1234)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\NOSV.TEST)
grammar.asl 2583: Device (IDXF)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2611: Store (IFE0, Local0)
Warning 3144 - ^ Method Local is set but never used (Local0)
@ -171,85 +251,136 @@ grammar.asl 2613: Store (IFE2, Local2)
Warning 3144 - ^ Method Local is set but never used (Local2)
grammar.asl 2630: Device (NSTL)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 2658: Device (RTBF)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2667: Name (ABUF, Buffer() {"ARBITRARY_BUFFER"})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\RTBF.RBUF)
grammar.asl 2695: Name (BUFR, Buffer(Local1) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\RTBF.RBUF)
grammar.asl 2756: Device (GPE2)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2771: Device (PRW2)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2819: Device (PRW1)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 2886: Store (Arg0, Local0)
Warning 3144 - ^ Method Local is set but never used (Local0)
grammar.asl 2889: Device (RTLV)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 2989: Device (PCI1)
Warning 3073 - Multiple types ^ (Device object requires either a _HID or _ADR, but not both)
grammar.asl 2993: Name (_CRS,0)
Error 6105 - ^ Invalid object type for reserved name (_CRS: found Integer, Buffer required)
grammar.asl 3017: Device (RETP)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 3053: Device (WHLR)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 3109: Device (ANDO)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 3343: Name(RSLT,1)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\ANDO.TEST)
grammar.asl 3383: Device (BRKP)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 3420: Device (ADSU)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 3435: Name (DWRD, 0x12345678)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\ADSU.TEST)
grammar.asl 3436: Name (WRD, 0x1234)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\ADSU.TEST)
grammar.asl 3437: Name (BYT, 0x12)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\ADSU.TEST)
grammar.asl 3513: Device (INDC)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 3528: Name (DWRD, 0x12345678)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\INDC.TEST)
grammar.asl 3529: Name (WRD, 0x1234)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\INDC.TEST)
grammar.asl 3530: Name (BYT, 0x12)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\INDC.TEST)
grammar.asl 3611: Device (LOPS)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 3956: Device (FDSO)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 4120: Device (MLDV)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 4135: Name (RMDR, 0)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\MLDV.TEST)
grammar.asl 4136: Name (DWRD, 0x12345678)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\MLDV.TEST)
grammar.asl 4137: Name (WRD, 0x1234)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\MLDV.TEST)
grammar.asl 4138: Name (BYT, 0x12)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\MLDV.TEST)
grammar.asl 4253: Device (NBIT)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 4489: Device (SHFT)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 4685: Device (XORD)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 4693: OperationRegion (RAM, SystemMemory, 0x800000, 256)
Warning 3175 - ^ Static OperationRegion should be declared outside control method
grammar.asl 4693: OperationRegion (RAM, SystemMemory, 0x800000, 256)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\XORD.TEST)
grammar.asl 5022: Device (CRBF)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 5100: Device (IDX4)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 5117: OperationRegion (RAM, SystemMemory, Arg0, 0x100)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX4.MADM)
grammar.asl 5639: Device (EVNT)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 5867: Device (SZLV)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 5960: Device (BYTF)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 5970: Device (C005)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 5972: Device (C013)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 6027: Name (_HID, "*PNP0A06")
Error 6061 - Invalid leading asterisk ^ (*PNP0A06)
@ -258,13 +389,13 @@ grammar.asl 6166: Name (C18C, Package (2)
Remark 2063 - ^ Initializer list shorter than declared package length
grammar.asl 6190: Device (C19B)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 6199: Divide (Local1, 10, Local0, Local2) // Local0 = Local1 / 10
Warning 3144 - Method Local is set but never used ^ (Local0)
grammar.asl 6244: Device (DWDF)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 6276: Method (MKW_, 2)
Remark 2146 - ^ Method Argument is never used (Arg0)
@ -273,13 +404,13 @@ grammar.asl 6276: Method (MKW_, 2)
Remark 2146 - ^ Method Argument is never used (Arg1)
grammar.asl 6285: Device (DVAX)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 6328: Device (IDX6)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 6352: Device (TST_)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 6371: Store (IFE0, Local0)
Warning 3144 - ^ Method Local is set but never used (Local0)
@ -303,28 +434,100 @@ grammar.asl 6380: Store (\IDX6.TST_.IFE1, Local6)
Warning 3144 - Method Local is set but never used ^ (Local6)
grammar.asl 6393: Device (IDX5)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 6416: Name (BUF0, Buffer (Local0) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX5.MCTH)
grammar.asl 6417: Name (BUF1, Buffer (Local0) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX5.MCTH)
grammar.asl 6474: Device (PCI2)
Warning 3073 - Multiple types ^ (Device object requires either a _HID or _ADR, but not both)
grammar.asl 6478: Name (_CRS, Buffer(26) {"\_SB_.PCI2._CRS..........."})
Warning 3046 - Invalid or unknown escape sequence ^
grammar.asl 6554: Name (BUFR, Package(13) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX0._BIF)
grammar.asl 6578: Name (BUFR, Package(4) {1, 0x100, 0x76543210, 0x180})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX0._BST)
grammar.asl 6593: Name (PBUF, Package(4) {}) // leave uninitialized
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX0.TEST)
grammar.asl 6625: Name (BUFR, Buffer(16)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX0.TEST)
grammar.asl 6709: Device (BITI)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 6817: And (Local0, 1, Local0) // Local0 &= 1
Error 6066 - ^ Method local variable is not initialized (Local0)
grammar.asl 6846: Name (C17C, Package (13)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.C17B)
grammar.asl 6903: Name (_HID, "*PNP0C0A") // Control Method Battey ID
Error 6061 - Invalid leading asterisk ^ (*PNP0C0A)
grammar.asl 6912: Device (IDX3)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 6922: Name (BUFR, Buffer () {0, 1, 2, 3, 4, 5, 6, 7, 8, 9})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX3.LCLB)
grammar.asl 6974: Name (PKG, Package () {0, 1, 2, 3, 4, 5, 6, 7, 8, 9})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX3.LCLP)
grammar.asl 7057: Device(IDX7)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 7074: Name (DEST, Buffer () // 62 characters plus NULL
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TST1)
grammar.asl 7093: Name (BUF0, Buffer() {0x1, 0x2, 0x3, 0x4, 0x5})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TST2)
grammar.asl 7110: Name (BUF1, Buffer() {0x1, 0x2, 0x3, 0x4, 0x5})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TST3)
grammar.asl 7301: Name (SRCB, Buffer (12) {}) // 12 characters
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTF)
grammar.asl 7304: Name (DEST, Buffer () // 62 characters plus NULL
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTF)
grammar.asl 7327: Name (SRCB, Buffer (12) {}) // 12 characters
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTG)
grammar.asl 7330: Name (DEST, Buffer () // 62 characters plus NULL
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTG)
grammar.asl 7412: Name (DBUF, Buffer () {"abcdefghijklmnopqrstuvwxyz"})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTH)
grammar.asl 7448: Name (DBUF, Buffer () {"abcdefghijklmnopqrstuvwxyz"})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTI)
grammar.asl 7484: Name (DBUF, Buffer () {"abcdefghijklmnopqrstuvwxyz"})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTJ)
grammar.asl 7520: Name (DBUF, Buffer () {"abcdefghijklmnopqrstuvwxyz"})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTK)
grammar.asl 7556: Name (DBUF, Buffer () {"abcdefghijklmnopqrstuvwxyz"})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\IDX7.TSTL)
grammar.asl 7736: Device (MTCH)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 7743: Name (TIM0, Package ()
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\MTCH.TEST)
grammar.asl 7755: Name (TMD0, Buffer (20) {0xFF, 0xFF, 0xFF, 0xFF })
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\MTCH.TEST)
grammar.asl 7757: CreateDWordField (TMD0, 4, DMA0)
Remark 2089 - Object is not referenced ^ (Name [DMA0] is within a method [TEST])
@ -339,43 +542,79 @@ grammar.asl 7760: CreateDWordField (TMD0, 16, CHNF)
Remark 2089 - Object is not referenced ^ (Name [CHNF] is within a method [TEST])
grammar.asl 7934: Device (WHLB)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 8275: Name (BUFR, Package (13) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.BAT1._BIF)
grammar.asl 8295: Device (IDX2)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 8300: Name (SRCB, Buffer () {"Short Buffer"}) // 12 characters plus NULL
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX2.B2IB)
grammar.asl 8302: Name (DEST, Buffer () // 62 characters plus NULL
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX2.B2IB)
grammar.asl 8493: Name (DEST, Package (2) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\_SB.IDX2.FB2P)
grammar.asl 8678: Device (SIZO)
Warning 3141 - ^ Missing dependency (Device object requires a _HID or _ADR in same scope)
Error 6141 - ^ Missing dependency (Device object requires a _HID or _ADR)
grammar.asl 8708: Name (BUFR, Buffer (12) {}) // uninitialized Buffer
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SARG)
grammar.asl 8709: Name (BUF1, Buffer() {0x01, 0x02, 0x03, 0x04, 0x05})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SARG)
grammar.asl 8710: Name (PKG0, Package (4) {}) // uninitialized Package
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SARG)
grammar.asl 8712: Name (PKG1, Package (4)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SARG)
grammar.asl 8720: Name (PKG2, Package (4)
Remark 2063 - ^ Initializer list shorter than declared package length
grammar.asl 8720: Name (PKG2, Package (4)
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SARG)
grammar.asl 8973: Name (BUFR, Buffer (12) {})
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SBUF)
grammar.asl 9034: Name (BUFR, Buffer (12) {}) // uninitialized Buffer
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SLOC)
grammar.asl 9036: Name (PKG0, Package (4) {}) // uninitialized Package
Remark 2173 - ^ Creation of named objects within a method is highly inefficient, use globals or method local variables instead (\SIZO.SLOC)
grammar.asl 9132: Store (_OS, Local0)
Warning 3144 - ^ Method Local is set but never used (Local0)
grammar.asl 9262: Device (MBIT)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 9273: Device (MWRD)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 9281: Device (MBYT)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 9354: Device (SMIS)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
grammar.asl 9408: Device(CNDT)
Warning 3141 - Missing dependency ^ (Device object requires a _HID or _ADR in same scope)
Error 6141 - Missing dependency ^ (Device object requires a _HID or _ADR)
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version VVVVVVVV
Copyright (c) 2000 - 2019 Intel Corporation
Copyright (c) 2000 - 2023 Intel Corporation
Ignoring all errors, forcing AML file generation
ASL Input: grammar.asl - 323653 bytes 4818 keywords 10284 source lines
ASL Input: grammar.asl - 323653 bytes 4818 keywords 0 source lines
AML Output: grammar.aml - 43758 bytes 4148 opcodes 670 named objects
Compilation successful. 6 Errors, 88 Warnings, 27 Remarks, 1106 Optimizations
Compilation successful. 60 Errors, 41 Warnings, 97 Remarks, 1106 Optimizations

View file

@ -1,283 +0,0 @@
Use proper integer formatting
From: Al Stone <ahs3@redhat.com>
---
source/compiler/aslerror.c | 4 ++--
source/compiler/aslopt.c | 2 +-
source/compiler/aslprepkg.c | 2 +-
source/components/debugger/dbexec.c | 2 +-
source/components/dispatcher/dsmthdat.c | 4 ++--
source/components/dispatcher/dsutils.c | 2 +-
source/components/dispatcher/dswscope.c | 4 ++--
source/components/events/evgpe.c | 4 ++--
source/components/executer/exdump.c | 2 +-
source/components/executer/exfldio.c | 4 ++--
source/components/executer/exnames.c | 4 ++--
source/components/hardware/hwregs.c | 2 +-
source/components/tables/tbfadt.c | 6 +++---
source/components/tables/tbxfroot.c | 6 +++---
source/components/utilities/utownerid.c | 2 +-
18 files changed, 28 insertions(+), 28 deletions(-)
Index: acpica-unix-20190405/source/compiler/aslerror.c
===================================================================
--- acpica-unix-20190405.orig/source/compiler/aslerror.c
+++ acpica-unix-20190405/source/compiler/aslerror.c
@@ -906,7 +906,7 @@ AslLogNewError (
AslGbl_ExceptionCount[ModifiedLevel]++;
if (!AslGbl_IgnoreErrors && AslGbl_ExceptionCount[ASL_ERROR] > ASL_MAX_ERROR_COUNT)
{
- printf ("\nMaximum error count (%u) exceeded\n", ASL_MAX_ERROR_COUNT);
+ printf ("\nMaximum error count (%d) exceeded\n", ASL_MAX_ERROR_COUNT);
AslGbl_SourceLine = 0;
AslGbl_NextError = AslGbl_ErrorLog;
Index: acpica-unix-20190405/source/compiler/aslopt.c
===================================================================
--- acpica-unix-20190405.orig/source/compiler/aslopt.c
+++ acpica-unix-20190405/source/compiler/aslopt.c
@@ -583,7 +583,7 @@ OptOptimizeNamePath (
}
ACPI_DEBUG_PRINT_RAW ((ACPI_DB_OPTIMIZATIONS,
- "PATH OPTIMIZE: Line %5d ParentOp [%12.12s] ThisOp [%12.12s] ",
+ "PATH OPTIMIZE: Line %5u ParentOp [%12.12s] ThisOp [%12.12s] ",
Op->Asl.LogicalLineNumber,
AcpiPsGetOpcodeName (Op->Common.Parent->Common.AmlOpcode),
AcpiPsGetOpcodeName (Op->Common.AmlOpcode)));
Index: acpica-unix-20190405/source/compiler/aslprepkg.c
===================================================================
--- acpica-unix-20190405.orig/source/compiler/aslprepkg.c
+++ acpica-unix-20190405/source/compiler/aslprepkg.c
@@ -309,7 +309,7 @@ ApCheckPackage (
if (Count & 1)
{
- sprintf (AslGbl_MsgBuffer, "%4.4s: Package length, %d, must be even.",
+ sprintf (AslGbl_MsgBuffer, "%4.4s: Package length, %u, must be even.",
Predefined->Info.Name, Count);
AslError (ASL_ERROR, ASL_MSG_RESERVED_PACKAGE_LENGTH,
Index: acpica-unix-20190405/source/components/debugger/dbexec.c
===================================================================
--- acpica-unix-20190405.orig/source/components/debugger/dbexec.c
+++ acpica-unix-20190405/source/components/debugger/dbexec.c
@@ -230,7 +230,7 @@ AcpiDbExecuteMethod (
ACPI_ERROR ((AE_INFO,
"Possible buffer overflow within AML Debugger "
"buffer (size 0x%X needed 0x%X)",
- ACPI_DEBUG_BUFFER_SIZE, (UINT32) ReturnObj->Length));
+ (UINT32) ACPI_DEBUG_BUFFER_SIZE, (UINT32) ReturnObj->Length));
}
}
Index: acpica-unix-20190405/source/components/dispatcher/dsmthdat.c
===================================================================
--- acpica-unix-20190405.orig/source/components/dispatcher/dsmthdat.c
+++ acpica-unix-20190405/source/components/dispatcher/dsmthdat.c
@@ -291,7 +291,7 @@ AcpiDsMethodDataGetNode (
if (Index > ACPI_METHOD_MAX_LOCAL)
{
ACPI_ERROR ((AE_INFO,
- "Local index %u is invalid (max %u)",
+ "Local index %u is invalid (max %d)",
Index, ACPI_METHOD_MAX_LOCAL));
return_ACPI_STATUS (AE_AML_INVALID_INDEX);
}
@@ -306,7 +306,7 @@ AcpiDsMethodDataGetNode (
if (Index > ACPI_METHOD_MAX_ARG)
{
ACPI_ERROR ((AE_INFO,
- "Arg index %u is invalid (max %u)",
+ "Arg index %u is invalid (max %d)",
Index, ACPI_METHOD_MAX_ARG));
return_ACPI_STATUS (AE_AML_INVALID_INDEX);
}
Index: acpica-unix-20190405/source/components/dispatcher/dsutils.c
===================================================================
--- acpica-unix-20190405.orig/source/components/dispatcher/dsutils.c
+++ acpica-unix-20190405/source/components/dispatcher/dsutils.c
@@ -786,7 +786,7 @@ AcpiDsCreateOperands (
}
ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH,
- "NumOperands %d, ArgCount %d, Index %d\n",
+ "NumOperands %d, ArgCount %u, Index %u\n",
WalkState->NumOperands, ArgCount, Index));
/* Create the interpreter arguments, in reverse order */
Index: acpica-unix-20190405/source/components/dispatcher/dswscope.c
===================================================================
--- acpica-unix-20190405.orig/source/components/dispatcher/dswscope.c
+++ acpica-unix-20190405/source/components/dispatcher/dswscope.c
@@ -149,7 +149,7 @@ AcpiDsScopeStackPush (
WalkState->ScopeDepth++;
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC,
- "[%.2d] Pushed scope ", (UINT32) WalkState->ScopeDepth));
+ "[%.2d] Pushed scope ", WalkState->ScopeDepth));
OldScopeInfo = WalkState->ScopeInfo;
if (OldScopeInfo)
@@ -211,7 +211,7 @@ AcpiDsScopeStackPop (
WalkState->ScopeDepth--;
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC,
- "[%.2d] Popped scope [%4.4s] (%s), New scope -> ",
+ "[%.2u] Popped scope [%4.4s] (%s), New scope -> ",
(UINT32) WalkState->ScopeDepth,
AcpiUtGetNodeName (ScopeInfo->Scope.Node),
AcpiUtGetTypeName (ScopeInfo->Common.Value)));
Index: acpica-unix-20190405/source/components/events/evgpe.c
===================================================================
--- acpica-unix-20190405.orig/source/components/events/evgpe.c
+++ acpica-unix-20190405/source/components/events/evgpe.c
@@ -489,7 +489,7 @@ AcpiEvGpeDetect (
"Ignore disabled registers for GPE %02X-%02X: "
"RunEnable=%02X, WakeEnable=%02X\n",
GpeRegisterInfo->BaseGpeNumber,
- GpeRegisterInfo->BaseGpeNumber + (ACPI_GPE_REGISTER_WIDTH - 1),
+ (unsigned int) (GpeRegisterInfo->BaseGpeNumber + (ACPI_GPE_REGISTER_WIDTH - 1)),
GpeRegisterInfo->EnableForRun,
GpeRegisterInfo->EnableForWake));
continue;
Index: acpica-unix-20190405/source/components/executer/exdump.c
===================================================================
--- acpica-unix-20190405.orig/source/components/executer/exdump.c
+++ acpica-unix-20190405/source/components/executer/exdump.c
@@ -678,7 +678,7 @@ AcpiExDumpOperand (
if (Depth > 0)
{
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "%*s[%u] %p Refs=%u ",
- Depth, " ", Depth, ObjDesc, ObjDesc->Common.ReferenceCount));
+ (int) Depth, " ", Depth, ObjDesc, ObjDesc->Common.ReferenceCount));
}
else
{
Index: acpica-unix-20190405/source/components/executer/exfldio.c
===================================================================
--- acpica-unix-20190405.orig/source/components/executer/exfldio.c
+++ acpica-unix-20190405/source/components/executer/exfldio.c
@@ -681,8 +681,8 @@ AcpiExWriteWithUpdateRule (
ACPI_ERROR ((AE_INFO,
"Unknown UpdateRule value: 0x%X",
- (ObjDesc->CommonField.FieldFlags &
- AML_FIELD_UPDATE_RULE_MASK)));
+ (unsigned int) (ObjDesc->CommonField.FieldFlags &
+ AML_FIELD_UPDATE_RULE_MASK)));
return_ACPI_STATUS (AE_AML_OPERAND_VALUE);
}
}
Index: acpica-unix-20190405/source/components/executer/exnames.c
===================================================================
--- acpica-unix-20190405.orig/source/components/executer/exnames.c
+++ acpica-unix-20190405/source/components/executer/exnames.c
@@ -237,7 +237,7 @@ AcpiExNameSegment (
*/
ACPI_DEBUG_PRINT ((ACPI_DB_INFO,
"Leading character is not alpha: %02Xh (not a name)\n",
- CharBuf[0]));
+ (unsigned int) CharBuf[0]));
Status = AE_CTRL_PENDING;
}
else
@@ -249,7 +249,7 @@ AcpiExNameSegment (
Status = AE_AML_BAD_NAME;
ACPI_ERROR ((AE_INFO,
"Bad character 0x%02x in name, at %p",
- *AmlAddress, AmlAddress));
+ (unsigned int) (*AmlAddress), AmlAddress));
}
*InAmlAddress = ACPI_CAST_PTR (UINT8, AmlAddress);
Index: acpica-unix-20190405/source/components/hardware/hwregs.c
===================================================================
--- acpica-unix-20190405.orig/source/components/hardware/hwregs.c
+++ acpica-unix-20190405/source/components/hardware/hwregs.c
@@ -460,7 +460,7 @@ AcpiHwClearAcpiStatus (
ACPI_DEBUG_PRINT ((ACPI_DB_IO, "About to write %04X to %8.8X%8.8X\n",
- ACPI_BITMASK_ALL_FIXED_STATUS,
+ (UINT32) ACPI_BITMASK_ALL_FIXED_STATUS,
ACPI_FORMAT_UINT64 (AcpiGbl_XPm1aStatus.Address)));
LockFlags = AcpiOsAcquireLock (AcpiGbl_HardwareLock);
Index: acpica-unix-20190405/source/components/tables/tbfadt.c
===================================================================
--- acpica-unix-20190405.orig/source/components/tables/tbfadt.c
+++ acpica-unix-20190405/source/components/tables/tbfadt.c
@@ -233,7 +233,7 @@ AcpiTbInitGenericAddress (
if (!(Flags & ACPI_FADT_GPE_REGISTER))
{
ACPI_ERROR ((AE_INFO,
- "%s - 32-bit FADT register is too long (%u bytes, %u bits) "
+ "%s - 32-bit FADT register is too long (%u bytes, %d bits) "
"to convert to GAS struct - 255 bits max, truncating",
RegisterName, ByteWidth, (ByteWidth * 8)));
}
@@ -304,7 +304,7 @@ AcpiTbSelectAddress (
ACPI_BIOS_WARNING ((AE_INFO,
"32/64X %s address mismatch in FADT: "
- "0x%8.8X/0x%8.8X%8.8X, using %u-bit address",
+ "0x%8.8X/0x%8.8X%8.8X, using %d-bit address",
RegisterName, Address32, ACPI_FORMAT_UINT64 (Address64),
AcpiGbl_Use32BitFadtAddresses ? 32 : 64));
@@ -628,7 +628,7 @@ AcpiTbConvertFadt (
ACPI_BIOS_WARNING ((AE_INFO,
"32/64X address mismatch in FADT/%s: "
- "0x%8.8X/0x%8.8X%8.8X, using %u-bit address",
+ "0x%8.8X/0x%8.8X%8.8X, using %d-bit address",
Name, Address32,
ACPI_FORMAT_UINT64 (Address64->Address),
AcpiGbl_Use32BitFadtAddresses ? 32 : 64));
Index: acpica-unix-20190405/source/components/tables/tbxfroot.c
===================================================================
--- acpica-unix-20190405.orig/source/components/tables/tbxfroot.c
+++ acpica-unix-20190405/source/components/tables/tbxfroot.c
@@ -177,7 +177,7 @@ AcpiFindRootPointer (
{
ACPI_ERROR ((AE_INFO,
"Could not map memory at 0x%8.8X for length %u",
- ACPI_EBDA_PTR_LOCATION, ACPI_EBDA_PTR_LENGTH));
+ (UINT32) ACPI_EBDA_PTR_LOCATION, (UINT32) ACPI_EBDA_PTR_LENGTH));
return_ACPI_STATUS (AE_NO_MEMORY);
}
@@ -204,7 +204,7 @@ AcpiFindRootPointer (
{
ACPI_ERROR ((AE_INFO,
"Could not map memory at 0x%8.8X for length %u",
- PhysicalAddress, ACPI_EBDA_WINDOW_SIZE));
+ PhysicalAddress, (UINT32) ACPI_EBDA_WINDOW_SIZE));
return_ACPI_STATUS (AE_NO_MEMORY);
}
@@ -236,7 +236,7 @@ AcpiFindRootPointer (
{
ACPI_ERROR ((AE_INFO,
"Could not map memory at 0x%8.8X for length %u",
- ACPI_HI_RSDP_WINDOW_BASE, ACPI_HI_RSDP_WINDOW_SIZE));
+ (UINT32) ACPI_HI_RSDP_WINDOW_BASE, (UINT32) ACPI_HI_RSDP_WINDOW_SIZE));
return_ACPI_STATUS (AE_NO_MEMORY);
}
Index: acpica-unix-20190405/source/components/utilities/utownerid.c
===================================================================
--- acpica-unix-20190405.orig/source/components/utilities/utownerid.c
+++ acpica-unix-20190405/source/components/utilities/utownerid.c
@@ -237,7 +237,7 @@ AcpiUtReleaseOwnerId (
else
{
ACPI_ERROR ((AE_INFO,
- "Release of non-allocated OwnerId: 0x%2.2X", OwnerId + 1));
+ "Release of non-allocated OwnerId: 0x%2.2X", (UINT32) OwnerId + 1));
}
(void) AcpiUtReleaseMutex (ACPI_MTX_CACHES);

View file

@ -1,37 +0,0 @@
Index: acpica-unix-20190329/source/compiler/aslparseop.c
===================================================================
--- acpica-unix-20190329.orig/source/compiler/aslparseop.c
+++ acpica-unix-20190329/source/compiler/aslparseop.c
@@ -283,7 +283,16 @@ TrCreateValuedLeafOp (
Op = TrAllocateOp (ParseOpcode);
- Op->Asl.Value.Integer = Value;
+ if (ParseOpcode == PARSEOP_NAMESTRING ||
+ ParseOpcode == PARSEOP_NAMESEG ||
+ ParseOpcode == PARSEOP_STRING_LITERAL)
+ {
+ Op->Asl.Value.String = (char *) Value;
+ }
+ else
+ {
+ Op->Asl.Value.Integer = Value;
+ }
DbgPrint (ASL_PARSE_OUTPUT,
"\nCreateValuedLeafOp Ln/Col %u/%u NewOp %p "
Index: acpica-unix-20190329/source/include/platform/aclinux.h
===================================================================
--- acpica-unix-20190329.orig/source/include/platform/aclinux.h
+++ acpica-unix-20190329/source/include/platform/aclinux.h
@@ -232,10 +232,8 @@
#endif
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
-#if defined(__PPC64__) || defined(__s390x__)
#define ACPI_BIG_ENDIAN
#endif
-#endif
#endif /* __KERNEL__ */

View file

@ -1,16 +0,0 @@
Index: acpica-unix-20190329/source/include/platform/aclinux.h
===================================================================
--- acpica-unix-20190329.orig/source/include/platform/aclinux.h
+++ acpica-unix-20190329/source/include/platform/aclinux.h
@@ -233,9 +233,11 @@
#define __cdecl
#endif
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
#if defined(__PPC64__) || defined(__s390x__)
#define ACPI_BIG_ENDIAN
#endif
+#endif
#endif /* __KERNEL__ */

View file

@ -1,48 +0,0 @@
diff -Naur acpica-unix2-20180209.orig/source/components/tables/tbutils.c acpica-unix2-20180209/source/components/tables/tbutils.c
--- acpica-unix2-20180209.orig/source/components/tables/tbutils.c 2018-03-15 16:47:21.831526264 -0600
+++ acpica-unix2-20180209/source/components/tables/tbutils.c 2018-03-15 16:58:20.030097284 -0600
@@ -238,9 +238,11 @@
* 64-bit platform, XSDT: Move (unaligned) 64-bit to local,
* return 64-bit
*/
- Address64 = (UINT64) TableEntry;
#if ACPI_MACHINE_WIDTH == 32
+ UINT32 Tmp32 = (UINT32) TableEntry;
+
+ Address64 = (UINT64) Tmp32;
if (Address64 > ACPI_UINT32_MAX)
{
/* Will truncate 64-bit address to 32 bits, issue warning */
@@ -250,9 +252,15 @@
" truncating",
ACPI_FORMAT_UINT64 (Address64)));
}
-#endif
+
+ return ((ACPI_PHYSICAL_ADDRESS) (*ACPI_CAST_PTR (
+ UINT32, TableEntry)));
+#else
+ Address64 = (UINT64) TableEntry;
+
return ((ACPI_PHYSICAL_ADDRESS) (*ACPI_CAST_PTR (
UINT64, Address64)));
+#endif
}
}
diff -Naur acpica-unix2-20180209.orig/source/compiler/aslparseop.c acpica-unix2-20180209/source/compiler/aslparseop.c
--- acpica-unix2-20180209.orig/source/compiler/aslparseop.c 2018-03-15 17:20:09.844338074 -0600
+++ acpica-unix2-20180209/source/compiler/aslparseop.c 2018-03-15 17:28:19.570800797 -0600
@@ -287,7 +287,11 @@
ParseOpcode == PARSEOP_NAMESEG ||
ParseOpcode == PARSEOP_STRING_LITERAL)
{
+#if ACPI_MACHINE_WIDTH == 32
+ Op->Asl.Value.String = (char *) (UINT32) Value;
+#else
Op->Asl.Value.String = (char *) Value;
+#endif
}
else
{

View file

@ -39,9 +39,10 @@ $BINDIR/iasl -f -of grammar.asl 2>&1 | tee grammar.asl.actual
diff grammar.asl.actual grammar.asl.expected >/dev/null 2>&1
[ $? -eq 0 ] || exit 1
# see if converterSample.asl succeeded as expected
$BINDIR/iasl converterSample.asl 2>&1 | tee converterSample.asl.actual
# see if converterSample.asl failed as expected
# NB: the -f option is required so we can see all of the errors
$BINDIR/iasl -f -of converterSample.asl 2>&1 | tee converterSample.asl.actual
diff converterSample.asl.actual converterSample.asl.expected >/dev/null 2>&1
[ $? -ne 0 ] && exit 1
[ $? -eq 0 ] || exit 1
exit 0

View file

@ -1,20 +0,0 @@
Description: Stop listing all 64bit architectures
Check __LP64__ instead of maintaining a list of all
64bit architectures.
Author: Adrian Bunk <bunk@debian.org>
Index: acpica-unix-20190329/source/include/platform/aclinux.h
===================================================================
--- acpica-unix-20190329.orig/source/include/platform/aclinux.h
+++ acpica-unix-20190329/source/include/platform/aclinux.h
@@ -215,9 +215,7 @@
#define ACPI_FLUSH_CPU_CACHE()
#define ACPI_CAST_PTHREAD_T(Pthread) ((ACPI_THREAD_ID) (Pthread))
-#if defined(__ia64__) || (defined(__x86_64__) && !defined(__ILP32__)) ||\
- defined(__aarch64__) || defined(__PPC64__) ||\
- defined(__s390x__)
+#if defined(__LP64__)
#define ACPI_MACHINE_WIDTH 64
#define COMPILER_DEPENDENT_INT64 long
#define COMPILER_DEPENDENT_UINT64 unsigned long

View file

@ -1,2 +1,2 @@
SHA512 (acpica-unix2-20190509.tar.gz) = 0c3433dc5afd4bb43272c22468515af4914e6c90fcc649dbd62915f911a2e5e553a40f334882c1411d3f0157e06e3879bf4a79b898cdb9cdb4f34430458a2f18
SHA512 (acpitests-unix-20190509.tar.gz) = 278d1c65c9a9ea77fb99bcc58347cf2a160d2dfeb0c27560688fcb2c3d7bd3613b2470c9ab4939e2c59bee8929fd639fa2c8d78660ad96658c010b6c73bd3fcf
SHA512 (acpica-unix2-20251212.tar.gz) = ecae5ab55d04bc1fd7def717c8c2a2dd64e8708577b900dc54e0fd613c5e3e6ee25037e37abe3aa818debd75114347c272d9931f55d340ff096d2f5f6f1d185b
SHA512 (acpitests-unix-20251212.tar.gz) = f8541f1abfd426834b8c7f17dc0eca8525de9a2e8f3a2b77311503845f26f478e66b8e3ce18e09aae5411683f57c68cbaa8c1baec6e6f567a0f768a6b4cc5715

View file

@ -1,8 +1,8 @@
Index: acpica-unix2-20181003/source/compiler/aslanalyze.c
Index: acpica-unix2-20240321/source/compiler/aslanalyze.c
===================================================================
--- acpica-unix2-20181003.orig/source/compiler/aslanalyze.c
+++ acpica-unix2-20181003/source/compiler/aslanalyze.c
@@ -355,11 +355,16 @@ AnCheckMethodReturnValue (
--- acpica-unix2-20240321.orig/source/compiler/aslanalyze.c
+++ acpica-unix2-20240321/source/compiler/aslanalyze.c
@@ -358,11 +358,16 @@ AnCheckMethodReturnValue (
*/
if (ThisNodeBtype != 0)
{
@ -14,17 +14,17 @@ Index: acpica-unix2-20181003/source/compiler/aslanalyze.c
"Method returns [%s], %s operator requires [%s]",
AslGbl_StringBuffer, OpInfo->Name, AslGbl_StringBuffer2);
- AslError (ASL_ERROR, ASL_MSG_INVALID_TYPE, ArgOp, AslGbl_MsgBuffer);
+ AslError (ASL_ERROR, ASL_MSG_INVALID_TYPE, ArgOp, strp);
- AslError (ASL_WARNING, ASL_MSG_INVALID_TYPE, ArgOp, AslGbl_MsgBuffer);
+ AslError (ASL_WARNING, ASL_MSG_INVALID_TYPE, ArgOp, strp);
+ if (cnt > 0)
+ free(strp);
}
}
}
Index: acpica-unix2-20181003/source/compiler/aslpredef.c
Index: acpica-unix2-20240321/source/compiler/aslpredef.c
===================================================================
--- acpica-unix2-20181003.orig/source/compiler/aslpredef.c
+++ acpica-unix2-20181003/source/compiler/aslpredef.c
--- acpica-unix2-20240321.orig/source/compiler/aslpredef.c
+++ acpica-unix2-20240321/source/compiler/aslpredef.c
@@ -159,14 +159,19 @@ ApCheckForPredefinedMethod (
if (MethodInfo->NumReturnNoValue &&
ThisName->Info.ExpectedBtypes)
@ -84,11 +84,11 @@ Index: acpica-unix2-20181003/source/compiler/aslpredef.c
return (AE_TYPE);
}
Index: acpica-unix2-20181003/source/compiler/aslwalks.c
Index: acpica-unix2-20240321/source/compiler/aslwalks.c
===================================================================
--- acpica-unix2-20181003.orig/source/compiler/aslwalks.c
+++ acpica-unix2-20181003/source/compiler/aslwalks.c
@@ -507,15 +507,19 @@ AnOperandTypecheckWalkEnd (
--- acpica-unix2-20240321.orig/source/compiler/aslwalks.c
+++ acpica-unix2-20240321/source/compiler/aslwalks.c
@@ -515,15 +515,19 @@ AnOperandTypecheckWalkEnd (
else if (!CommonBtypes)
{
/* No match -- this is a type mismatch error */

View file

@ -7,16 +7,16 @@ From: Al Stone <ahs3@redhat.com>
tests/templates/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: acpica-unix2-20161222/tests/templates/Makefile
Index: acpica-unix2-20240321/tests/templates/Makefile
===================================================================
--- acpica-unix2-20161222.orig/tests/templates/Makefile
+++ acpica-unix2-20161222/tests/templates/Makefile
@@ -2,7 +2,7 @@
PROG= templates
--- acpica-unix2-20240321.orig/tests/templates/Makefile
+++ acpica-unix2-20240321/tests/templates/Makefile
@@ -26,7 +26,7 @@ $(aml_obj): %.aml: %.asl
templates :
- sh templates.sh
+ sh templates.sh 1
clean :
rm -f *.asl *.aml *.dsl *.hex diff.log
.PHONY: clean
clean:

View file

@ -14,10 +14,10 @@ Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
source/include/actypes.h | 26 +++++++++++++-------------
3 files changed, 32 insertions(+), 21 deletions(-)
Index: acpica-unix2-20170728/source/components/executer/exoparg2.c
Index: acpica-unix2-20240321/source/components/executer/exoparg2.c
===================================================================
--- acpica-unix2-20170728.orig/source/components/executer/exoparg2.c
+++ acpica-unix2-20170728/source/components/executer/exoparg2.c
--- acpica-unix2-20240321.orig/source/components/executer/exoparg2.c
+++ acpica-unix2-20240321/source/components/executer/exoparg2.c
@@ -172,6 +172,8 @@ AcpiExOpcode_2A_2T_1R (
ACPI_OPERAND_OBJECT **Operand = &WalkState->Operands[0];
ACPI_OPERAND_OBJECT *ReturnDesc1 = NULL;
@ -58,10 +58,10 @@ Index: acpica-unix2-20170728/source/components/executer/exoparg2.c
break;
case AML_CONCATENATE_OP: /* Concatenate (Data1, Data2, Result) */
Index: acpica-unix2-20170728/source/include/actypes.h
Index: acpica-unix2-20240321/source/include/actypes.h
===================================================================
--- acpica-unix2-20170728.orig/source/include/actypes.h
+++ acpica-unix2-20170728/source/include/actypes.h
--- acpica-unix2-20240321.orig/source/include/actypes.h
+++ acpica-unix2-20240321/source/include/actypes.h
@@ -143,6 +143,19 @@ typedef COMPILER_DEPENDENT_INT64
*/
#define ACPI_THREAD_ID UINT64
@ -75,7 +75,7 @@ Index: acpica-unix2-20170728/source/include/actypes.h
+ * Note: EM64T and other X86-64 processors support misaligned transfers,
+ * so there is no need to define this flag.
+ */
+#if defined (__IA64__) || defined (__ia64__) || defined(__alpha__) || defined(__sparc__) || defined(__hppa__)
+#if defined (__IA64__) || defined (__ia64__) || defined(__alpha__) || defined(__sparc__) || defined(__hppa__) || defined(__arm__)
+#define ACPI_MISALIGNMENT_NOT_SUPPORTED
+#endif
+

13
uuid-len.patch Normal file
View file

@ -0,0 +1,13 @@
Index: acpica-unix2-20240321/source/tools/acpiexec/aeregion.c
===================================================================
--- acpica-unix2-20240321.orig/source/tools/acpiexec/aeregion.c
+++ acpica-unix2-20240321/source/tools/acpiexec/aeregion.c
@@ -97,7 +97,7 @@ AeRegionHandler (
UINT32 Value1;
UINT32 Value2;
ACPI_RESOURCE *Resource;
- char Uuid[ACPI_PRM_INPUT_BUFFER_SIZE + 1];
+ char Uuid[UUID_STRING_LENGTH + 1];
ACPI_FUNCTION_NAME (AeRegionHandler);