Jessica Clarke
ca25f92b72
ACPICA: Use original data_table_region pointer for accesses
...
ACPICA commit d9eb82bd7515989f0b29d79deeeb758db4d6529c
Currently the pointer to the table is cast to acpi_physical_address and
later cast back to a pointer to be dereferenced. Whether or not this is
supported is implementation-defined.
On CHERI, and thus Arm's experimental Morello prototype architecture,
pointers are represented as capabilities, which are unforgeable bounded
pointers, providing always-on fine-grained spatial memory safety. This
means that any pointer cast to a plain integer will lose all its
associated metadata, and when cast back to a pointer it will give a
null-derived pointer (one that has the same metadata as null but an
address equal to the integer) that will trap on any dereference. As a
result, this is an implementation where acpi_physical_address cannot be
used as a hack to store real pointers.
Thus, add a new field to struct acpi_object_region to store the pointer for
table regions, and propagate it to acpi_ex_data_table_space_handler via the
region context, to use a more portable implementation that supports
CHERI.
Link: https://github.com/acpica/acpica/commit/d9eb82bd
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2021-12-27 17:01:28 +01:00
..
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-12-27 17:01:28 +01:00
2021-10-05 15:53:32 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-12-27 17:01:28 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-04-07 19:09:00 +02:00
2021-04-07 19:09:01 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-06-07 14:04:43 +02:00
2021-01-22 15:51:53 +01:00
2021-04-07 19:09:01 +02:00
2018-03-18 19:08:05 +01:00
2019-10-28 22:12:46 +01:00
2020-06-05 13:34:23 +02:00
2020-10-08 18:03:55 +02:00
2019-10-28 22:12:46 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2020-10-08 18:03:55 +02:00
2019-10-28 22:12:46 +01:00
2021-01-18 16:01:10 +01:00
2019-08-21 00:00:37 +02:00
2019-02-18 11:21:10 +01:00
2018-03-18 19:08:05 +01:00
2020-03-30 14:52:32 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00
2021-01-22 15:51:53 +01:00
2021-12-27 17:01:28 +01:00
2021-01-22 15:51:53 +01:00
2018-12-13 22:40:51 +01:00
2021-08-16 16:47:01 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-12-27 17:01:28 +01:00
2021-01-22 15:51:53 +01:00
2021-02-19 16:03:25 +01:00
2021-12-27 17:01:28 +01:00
2018-03-18 19:08:05 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-02-19 16:03:25 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-12-27 17:01:28 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-06-07 14:04:43 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-12-27 17:01:28 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-06-07 14:04:43 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-10-05 15:53:32 +02:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00
2018-08-14 23:49:13 +02:00
2021-10-05 15:53:32 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-10-05 15:53:32 +02:00
2018-12-20 10:19:49 +01:00
2021-03-24 14:50:54 +01:00
2020-10-08 18:03:56 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2019-07-04 00:59:43 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2020-03-30 14:52:33 +02:00
2019-04-09 10:05:11 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-08-03 18:14:44 +02:00
2021-01-22 15:51:53 +01:00
2018-07-09 11:14:45 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00
2021-01-22 15:51:53 +01:00
2020-10-08 18:03:55 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00
2021-04-07 19:09:01 +02:00
2019-10-28 22:12:46 +01:00
2021-04-07 19:09:01 +02:00
2021-04-07 19:09:01 +02:00
2021-04-07 19:09:01 +02:00
2018-03-18 19:08:05 +01:00
2019-02-24 21:12:01 +01:00
2021-04-07 19:09:01 +02:00
2018-03-18 19:08:05 +01:00
2021-04-07 19:09:01 +02:00
2021-04-07 19:09:01 +02:00
2018-03-18 19:08:05 +01:00
2019-04-09 10:08:28 +02:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-05-31 13:56:33 +02:00
2019-08-21 00:00:36 +02:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00
2019-04-09 10:08:28 +02:00
2018-05-10 17:18:45 +02:00
2018-03-18 19:08:05 +01:00
2021-01-22 15:51:53 +01:00
2021-10-05 15:53:37 +02:00
2019-08-21 00:00:36 +02:00
2021-01-22 15:51:53 +01:00
2021-06-07 14:04:43 +02:00
2021-04-07 19:09:01 +02:00
2021-04-07 19:09:01 +02:00
2018-03-18 19:08:05 +01:00
2019-04-09 11:24:48 +02:00
2021-01-22 15:51:53 +01:00
2018-08-14 23:49:13 +02:00
2021-01-22 15:51:53 +01:00
2021-06-07 14:04:43 +02:00
2021-01-22 15:51:53 +01:00
2019-01-15 18:04:02 +01:00
2021-01-22 15:51:53 +01:00
2018-03-18 19:08:05 +01:00