<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/acpi/acpica, branch v6.4</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>ACPI: sleep: Avoid breaking S3 wakeup due to might_sleep()</title>
<updated>2023-06-15T16:05:19+00:00</updated>
<author>
<name>Rafael J. Wysocki</name>
<email>rafael.j.wysocki@intel.com</email>
</author>
<published>2023-06-14T15:29:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=22db06337f590d01d79f60f181d8dfe5a9ef9085'/>
<id>22db06337f590d01d79f60f181d8dfe5a9ef9085</id>
<content type='text'>
The addition of might_sleep() to down_timeout() caused the latter to
enable interrupts unconditionally in some cases, which in turn broke
the ACPI S3 wakeup path in acpi_suspend_enter(), where down_timeout()
is called by acpi_disable_all_gpes() via acpi_ut_acquire_mutex().

Namely, if CONFIG_DEBUG_ATOMIC_SLEEP is set, might_sleep() causes
might_resched() to be used and if CONFIG_PREEMPT_VOLUNTARY is set,
this triggers __cond_resched() which may call preempt_schedule_common(),
so __schedule() gets invoked and it ends up with enabled interrupts (in
the prev == next case).

Now, enabling interrupts early in the S3 wakeup path causes the kernel
to crash.

Address this by modifying acpi_suspend_enter() to disable GPEs without
attempting to acquire the sleeping lock which is not needed in that code
path anyway.

Fixes: 99409b935c9a ("locking/semaphore: Add might_sleep() to down_*() family")
Reported-by: Srinivas Pandruvada &lt;srinivas.pandruvada@linux.intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
Acked-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Cc: 5.15+ &lt;stable@vger.kernel.org&gt; # 5.15+
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The addition of might_sleep() to down_timeout() caused the latter to
enable interrupts unconditionally in some cases, which in turn broke
the ACPI S3 wakeup path in acpi_suspend_enter(), where down_timeout()
is called by acpi_disable_all_gpes() via acpi_ut_acquire_mutex().

Namely, if CONFIG_DEBUG_ATOMIC_SLEEP is set, might_sleep() causes
might_resched() to be used and if CONFIG_PREEMPT_VOLUNTARY is set,
this triggers __cond_resched() which may call preempt_schedule_common(),
so __schedule() gets invoked and it ends up with enabled interrupts (in
the prev == next case).

Now, enabling interrupts early in the S3 wakeup path causes the kernel
to crash.

Address this by modifying acpi_suspend_enter() to disable GPEs without
attempting to acquire the sleeping lock which is not needed in that code
path anyway.

Fixes: 99409b935c9a ("locking/semaphore: Add might_sleep() to down_*() family")
Reported-by: Srinivas Pandruvada &lt;srinivas.pandruvada@linux.intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
Acked-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Cc: 5.15+ &lt;stable@vger.kernel.org&gt; # 5.15+
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'acpi-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm</title>
<updated>2023-04-26T01:37:41+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2023-04-26T01:37:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=793582ff47f8b73be8d3d925d750bf3ef79f33c7'/>
<id>793582ff47f8b73be8d3d925d750bf3ef79f33c7</id>
<content type='text'>
Pull ACPI updates from Rafael Wysocki:
 "These update the ACPICA code in the kernel to upstream revision
  20230331, fix the ACPI SBS driver and the evaluation of the _PDC
  method on Xen dom0 in the ACPI processor driver, update the ACPI
  driver for Intel SoCs and clean up code in multiple places.

  Specifics:

   - Update the ACPICA code in the kernel to upstream revision 20230331
     including the following changes:
       * Delete bogus node_array array of pointers from AEST table
         (Jessica Clarke)
       * Add support for trace buffer extension in GICC to the ACPI MADT
         parser (Xiongfeng Wang)
       * Add missing macro ACPI_FUNCTION_TRACE() for
         acpi_ns_repair_HID() (Xiongfeng Wang)
       * Add missing tables to astable (Pedro Falcato)
       * Add support for 64 bit loong_arch compilation to ACPICA (Huacai
         Chen)
       * Add support for ASPT table in disassembler to ACPICA (Jeremi
         Piotrowski)
       * Add support for Arm's MPAM ACPI table version 2 (Hesham
         Almatary)
       * Update all copyrights/signons in ACPICA to 2023 (Bob Moore)
       * Add support for ClockInput resource (v6.5) (Niyas Sait)
       * Add RISC-V INTC interrupt controller definition to the list of
         supported interrupt controllers for MADT (Sunil V L)
       * Add structure definitions for the RISC-V RHCT ACPI table (Sunil
         V L)
       * Address several cases in which the ACPICA code might lead to
         undefined behavior (Tamir Duberstein)
       * Make ACPICA code support flexible arrays properly (Kees Cook)
       * Check null return of ACPI_ALLOCATE_ZEROED in
         acpi_db_display_objects() (void0red)
       * Add os specific support for Zephyr RTOS to ACPICA (Najumon)
       * Update version to 20230331 (Bob Moore)

   - Fix evaluating the _PDC ACPI control method when running as Xen
     dom0 (Roger Pau Monne)

   - Use platform devices to load ACPI PPC and PCC drivers (Petr Pavlu)

   - Check for null return of devm_kzalloc() in fch_misc_setup() (Kang
     Chen)

   - Log a message if enable_irq_wake() fails for the ACPI SCI (Simon
     Gaiser)

   - Initialize the correct IOMMU fwspec while parsing ACPI VIOT
     (Jean-Philippe Brucker)

   - Amend indentation and prefix error messages with FW_BUG in the ACPI
     SPCR parsing code (Andy Shevchenko)

   - Enable ACPI sysfs support for CCEL records (Kuppuswamy
     Sathyanarayanan)

   - Make the APEI error injection code warn on invalid arguments when
     explicitly indicated by platform (Shuai Xue)

   - Add CXL error types to the error injection code in APEI (Tony Luck)

   - Refactor acpi_data_prop_read_single() (Andy Shevchenko)

   - Fix two issues in the ACPI SBS driver (Armin Wolf)

   - Replace ternary operator with min_t() in the generic ACPI thermal
     zone driver (Jiangshan Yi)

   - Ensure that ACPI notify handlers are not running after removal and
     clean up code in acpi_sb_notify() (Rafael Wysocki)

   - Remove register_backlight_delay module option and code and remove
     quirks for false-positive backlight control support advertised on
     desktop boards (Hans de Goede)

   - Replace irqdomain.h include with struct declarations in ACPI
     headers and update several pieces of code previously including of.h
     implicitly through those headers (Rob Herring)

   - Fix acpi_evaluate_dsm_typed() redefinition error (Kiran K)

   - Update the pm_profile sysfs attribute documentation (Rafael
     Wysocki)

   - Add 80862289 ACPI _HID for second PWM controller on Cherry Trail to
     the ACPI driver for Intel SoCs (Hans de Goede)"

* tag 'acpi-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (64 commits)
  ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail
  ACPI: bus: Ensure that notify handlers are not running after removal
  ACPI: bus: Add missing braces to acpi_sb_notify()
  ACPI: video: Remove desktops without backlight DMI quirks
  ACPI: video: Remove register_backlight_delay module option and code
  ACPI: Replace irqdomain.h include with struct declarations
  fpga: lattice-sysconfig-spi: Add explicit include for of.h
  tpm: atmel: Add explicit include for of.h
  virtio-mmio: Add explicit include for of.h
  pata: ixp4xx: Add explicit include for of.h
  ata: pata_macio: Add explicit include of irqdomain.h
  serial: 8250_tegra: Add explicit include for of.h
  net: rfkill-gpio: Add explicit include for of.h
  staging: iio: resolver: ad2s1210: Add explicit include for of.h
  iio: adc: ad7292: Add explicit include for of.h
  ACPICA: Update version to 20230331
  ACPICA: add os specific support for Zephyr RTOS
  ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects
  ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array
  ACPICA: acpi_madt_oem_data: Fix flexible array member definition
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull ACPI updates from Rafael Wysocki:
 "These update the ACPICA code in the kernel to upstream revision
  20230331, fix the ACPI SBS driver and the evaluation of the _PDC
  method on Xen dom0 in the ACPI processor driver, update the ACPI
  driver for Intel SoCs and clean up code in multiple places.

  Specifics:

   - Update the ACPICA code in the kernel to upstream revision 20230331
     including the following changes:
       * Delete bogus node_array array of pointers from AEST table
         (Jessica Clarke)
       * Add support for trace buffer extension in GICC to the ACPI MADT
         parser (Xiongfeng Wang)
       * Add missing macro ACPI_FUNCTION_TRACE() for
         acpi_ns_repair_HID() (Xiongfeng Wang)
       * Add missing tables to astable (Pedro Falcato)
       * Add support for 64 bit loong_arch compilation to ACPICA (Huacai
         Chen)
       * Add support for ASPT table in disassembler to ACPICA (Jeremi
         Piotrowski)
       * Add support for Arm's MPAM ACPI table version 2 (Hesham
         Almatary)
       * Update all copyrights/signons in ACPICA to 2023 (Bob Moore)
       * Add support for ClockInput resource (v6.5) (Niyas Sait)
       * Add RISC-V INTC interrupt controller definition to the list of
         supported interrupt controllers for MADT (Sunil V L)
       * Add structure definitions for the RISC-V RHCT ACPI table (Sunil
         V L)
       * Address several cases in which the ACPICA code might lead to
         undefined behavior (Tamir Duberstein)
       * Make ACPICA code support flexible arrays properly (Kees Cook)
       * Check null return of ACPI_ALLOCATE_ZEROED in
         acpi_db_display_objects() (void0red)
       * Add os specific support for Zephyr RTOS to ACPICA (Najumon)
       * Update version to 20230331 (Bob Moore)

   - Fix evaluating the _PDC ACPI control method when running as Xen
     dom0 (Roger Pau Monne)

   - Use platform devices to load ACPI PPC and PCC drivers (Petr Pavlu)

   - Check for null return of devm_kzalloc() in fch_misc_setup() (Kang
     Chen)

   - Log a message if enable_irq_wake() fails for the ACPI SCI (Simon
     Gaiser)

   - Initialize the correct IOMMU fwspec while parsing ACPI VIOT
     (Jean-Philippe Brucker)

   - Amend indentation and prefix error messages with FW_BUG in the ACPI
     SPCR parsing code (Andy Shevchenko)

   - Enable ACPI sysfs support for CCEL records (Kuppuswamy
     Sathyanarayanan)

   - Make the APEI error injection code warn on invalid arguments when
     explicitly indicated by platform (Shuai Xue)

   - Add CXL error types to the error injection code in APEI (Tony Luck)

   - Refactor acpi_data_prop_read_single() (Andy Shevchenko)

   - Fix two issues in the ACPI SBS driver (Armin Wolf)

   - Replace ternary operator with min_t() in the generic ACPI thermal
     zone driver (Jiangshan Yi)

   - Ensure that ACPI notify handlers are not running after removal and
     clean up code in acpi_sb_notify() (Rafael Wysocki)

   - Remove register_backlight_delay module option and code and remove
     quirks for false-positive backlight control support advertised on
     desktop boards (Hans de Goede)

   - Replace irqdomain.h include with struct declarations in ACPI
     headers and update several pieces of code previously including of.h
     implicitly through those headers (Rob Herring)

   - Fix acpi_evaluate_dsm_typed() redefinition error (Kiran K)

   - Update the pm_profile sysfs attribute documentation (Rafael
     Wysocki)

   - Add 80862289 ACPI _HID for second PWM controller on Cherry Trail to
     the ACPI driver for Intel SoCs (Hans de Goede)"

* tag 'acpi-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (64 commits)
  ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail
  ACPI: bus: Ensure that notify handlers are not running after removal
  ACPI: bus: Add missing braces to acpi_sb_notify()
  ACPI: video: Remove desktops without backlight DMI quirks
  ACPI: video: Remove register_backlight_delay module option and code
  ACPI: Replace irqdomain.h include with struct declarations
  fpga: lattice-sysconfig-spi: Add explicit include for of.h
  tpm: atmel: Add explicit include for of.h
  virtio-mmio: Add explicit include for of.h
  pata: ixp4xx: Add explicit include for of.h
  ata: pata_macio: Add explicit include of irqdomain.h
  serial: 8250_tegra: Add explicit include for of.h
  net: rfkill-gpio: Add explicit include for of.h
  staging: iio: resolver: ad2s1210: Add explicit include for of.h
  iio: adc: ad7292: Add explicit include for of.h
  ACPICA: Update version to 20230331
  ACPICA: add os specific support for Zephyr RTOS
  ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects
  ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array
  ACPICA: acpi_madt_oem_data: Fix flexible array member definition
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "ACPICA: Events: Support fixed PCIe wake event"</title>
<updated>2023-04-21T20:39:10+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2023-04-21T20:39:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8e41e0a575664d26bb87e012c39435c4c3914ed9'/>
<id>8e41e0a575664d26bb87e012c39435c4c3914ed9</id>
<content type='text'>
This reverts commit 5c62d5aab8752e5ee7bfbe75ed6060db1c787f98.

This broke wake-on-lan for multiple people, and for much too long.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=217069
Link: https://lore.kernel.org/all/754225a2-95a9-2c36-1886-7da1a78308c2@loongson.cn/
Link: https://github.com/acpica/acpica/pull/866
Cc: Rafael J. Wysocki &lt;rafael@kernel.org&gt;
Cc: Jianmin Lv &lt;lvjianmin@loongson.cn&gt;
Cc: Huacai Chen &lt;chenhuacai@loongson.cn&gt;
Cc: Bob Moore &lt;robert.moore@intel.com&gt;
Cc: stable@kernel.org # 6.2
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 5c62d5aab8752e5ee7bfbe75ed6060db1c787f98.

This broke wake-on-lan for multiple people, and for much too long.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=217069
Link: https://lore.kernel.org/all/754225a2-95a9-2c36-1886-7da1a78308c2@loongson.cn/
Link: https://github.com/acpica/acpica/pull/866
Cc: Rafael J. Wysocki &lt;rafael@kernel.org&gt;
Cc: Jianmin Lv &lt;lvjianmin@loongson.cn&gt;
Cc: Huacai Chen &lt;chenhuacai@loongson.cn&gt;
Cc: Bob Moore &lt;robert.moore@intel.com&gt;
Cc: stable@kernel.org # 6.2
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects</title>
<updated>2023-04-06T18:29:12+00:00</updated>
<author>
<name>void0red</name>
<email>30990023+void0red@users.noreply.github.com</email>
</author>
<published>2023-04-05T13:57:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ae5a0eccc85fc960834dd66e3befc2728284b86c'/>
<id>ae5a0eccc85fc960834dd66e3befc2728284b86c</id>
<content type='text'>
ACPICA commit 0d5f467d6a0ba852ea3aad68663cbcbd43300fd4

ACPI_ALLOCATE_ZEROED may fails, object_info might be null and will cause
null pointer dereference later.

Link: https://github.com/acpica/acpica/commit/0d5f467d
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit 0d5f467d6a0ba852ea3aad68663cbcbd43300fd4

ACPI_ALLOCATE_ZEROED may fails, object_info might be null and will cause
null pointer dereference later.

Link: https://github.com/acpica/acpica/commit/0d5f467d
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array</title>
<updated>2023-04-06T18:29:12+00:00</updated>
<author>
<name>Kees Cook</name>
<email>kees@outflux.net</email>
</author>
<published>2023-04-05T13:56:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=376b0fb3ad621ca507c1bdf5636232959bf827e6'/>
<id>376b0fb3ad621ca507c1bdf5636232959bf827e6</id>
<content type='text'>
ACPICA commit bfdd3446e7caf795c85c70326c137023942972c5

Similar to "Replace one-element array with flexible-array", replace the
1-element array with a proper flexible array member as defined by C99.

This allows the code to operate without tripping compile-time and run-
time bounds checkers (e.g. via __builtin_object_size(), -fsanitize=bounds,
and/or -fstrict-flex-arrays=3). Note that the spec requires there be at
least one interrupt, so use a union to keep space allocated for this.

The only binary change in .text and .data sections is some rearrangement
by the compiler of acpi_dm_address_common(), but appears to be harmless.

Link: https://github.com/acpica/acpica/commit/bfdd3446
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit bfdd3446e7caf795c85c70326c137023942972c5

Similar to "Replace one-element array with flexible-array", replace the
1-element array with a proper flexible array member as defined by C99.

This allows the code to operate without tripping compile-time and run-
time bounds checkers (e.g. via __builtin_object_size(), -fsanitize=bounds,
and/or -fstrict-flex-arrays=3). Note that the spec requires there be at
least one interrupt, so use a union to keep space allocated for this.

The only binary change in .text and .data sections is some rearrangement
by the compiler of acpi_dm_address_common(), but appears to be harmless.

Link: https://github.com/acpica/acpica/commit/bfdd3446
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: Avoid undefined behavior: load of misaligned address</title>
<updated>2023-04-06T18:29:11+00:00</updated>
<author>
<name>Tamir Duberstein</name>
<email>tamird@google.com</email>
</author>
<published>2023-04-05T13:47:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d0a874cb4519304baeb13b7f5e4b088caefca98f'/>
<id>d0a874cb4519304baeb13b7f5e4b088caefca98f</id>
<content type='text'>
ACPICA commit b3317239749d1907ec95e7aa2057d7ea29d3c638

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x000020c1f68c9959 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:244 &lt;platform-bus-x86.so&gt;+0x2d0959
  #1.2  0x000020e5d259f77f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000020e5d259f77f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000020e5d259f77f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000020e5d25a0385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000020e5d259fead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000020c1f68c9959 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:244 &lt;platform-bus-x86.so&gt;+0x2d0959
  #5    0x000020c1f68c65a9 in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:137 &lt;platform-bus-x86.so&gt;+0x2cd5a9
  #6    0x000020c1f68efda9 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6da9
  #7    0x000020c1f68c1806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #8    0x000020c1f68ccef2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3ef2
  #9    0x000020c1f68cd26d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d426d
  #10   0x000020c1f66e4d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #11   0x000020c1f66ea94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #12   0x000020c1f6776af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #13   0x000020c1f669eb44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #14   0x000020c1f66b06f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #15.1 0x000020c1f66ba8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15   0x000020c1f66ba8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #16.2 0x000020c1f68ff86c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x30686c
  #16.1 0x000020c1f68ff86c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x30686c
  #16   0x000020c1f68ff86c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x30686c
  #17.1 0x000022d99b37bd91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x000022d99b37bd91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #18   0x000022d99b374bc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #19   0x000022d99b3748dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #20   0x000022d99b3656a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #21   0x000022d99b36c4c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #22   0x000022d99b36d2c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #23.1 0x000022d99b37881e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x000022d99b37881e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #24   0x000022d99b374e7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #25.1 0x000022d99b36e964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x000022d99b36e964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #26   0x000022d99b36e35d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #27.1 0x000022d99b378c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #27   0x000022d99b378c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #28.1 0x000022d99b39aead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x000022d99b39aead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #29   0x000022d99b39c78f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #30   0x00004230f4a33edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #31   0x00004230f4b6496d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

and

  #0    0x00002357f60edb6d in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:257 &lt;platform-bus-x86.so&gt;+0x2d0b6d
  #1.2  0x0000212756f4777f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x0000212756f4777f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x0000212756f4777f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x0000212756f48385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x0000212756f47ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x00002357f60edb6d in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:257 &lt;platform-bus-x86.so&gt;+0x2d0b6d
  #5    0x00002357f60ea5a9 in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:137 &lt;platform-bus-x86.so&gt;+0x2cd5a9
  #6    0x00002357f6113d09 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6d09
  #7    0x00002357f60e5806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #8    0x00002357f60f0e52 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3e52
  #9    0x00002357f60f11cd in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d41cd
  #10   0x00002357f5f08d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #11   0x00002357f5f0e94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #12   0x00002357f5f9aaf2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #13   0x00002357f5ec2b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #14   0x00002357f5ed46f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #15.1 0x00002357f5ede8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15   0x00002357f5ede8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #16.2 0x00002357f61237cc in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x3067cc
  #16.1 0x00002357f61237cc in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x3067cc
  #16   0x00002357f61237cc in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x3067cc
  #17.1 0x000023df096b1d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x000023df096b1d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #18   0x000023df096aabc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #19   0x000023df096aa8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #20   0x000023df0969b6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #21   0x000023df096a24c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #22   0x000023df096a32c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #23.1 0x000023df096ae81e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x000023df096ae81e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #24   0x000023df096aae7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #25.1 0x000023df096a4964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x000023df096a4964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #26   0x000023df096a435d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #27.1 0x000023df096aec00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #27   0x000023df096aec00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #28.1 0x000023df096d0ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x000023df096d0ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #29   0x000023df096d278f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #30   0x0000424c7690eedc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #31   0x0000424c76a3f96d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

and

  #0    0x000020883e0b9c01 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:334 &lt;platform-bus-x86.so&gt;+0x2d0c01
  #1.2  0x000022cae2d8677f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000022cae2d8677f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000022cae2d8677f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000022cae2d87385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000022cae2d86ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000020883e0b9c01 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:334 &lt;platform-bus-x86.so&gt;+0x2d0c01
  #5    0x000020883e0b65a9 in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:137 &lt;platform-bus-x86.so&gt;+0x2cd5a9
  #6    0x000020883e0dfd89 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6d89
  #7    0x000020883e0b1806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #8    0x000020883e0bced2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3ed2
  #9    0x000020883e0bd24d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d424d
  #10   0x000020883ded4d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #11   0x000020883deda94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #12   0x000020883df66af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #13   0x000020883de8eb44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #14   0x000020883dea06f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #15.1 0x000020883deaa8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15   0x000020883deaa8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #16.2 0x000020883e0ef84c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x30684c
  #16.1 0x000020883e0ef84c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x30684c
  #16   0x000020883e0ef84c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x30684c
  #17.1 0x000021ae7c20cd91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x000021ae7c20cd91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #18   0x000021ae7c205bc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #19   0x000021ae7c2058dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #20   0x000021ae7c1f66a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #21   0x000021ae7c1fd4c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #22   0x000021ae7c1fe2c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #23.1 0x000021ae7c20981e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x000021ae7c20981e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #24   0x000021ae7c205e7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #25.1 0x000021ae7c1ff964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x000021ae7c1ff964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #26   0x000021ae7c1ff35d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #27.1 0x000021ae7c209c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #27   0x000021ae7c209c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #28.1 0x000021ae7c22bead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x000021ae7c22bead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #29   0x000021ae7c22d78f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #30   0x000042b2518e3edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #31   0x000042b251a1496d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/b3317239
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit b3317239749d1907ec95e7aa2057d7ea29d3c638

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x000020c1f68c9959 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:244 &lt;platform-bus-x86.so&gt;+0x2d0959
  #1.2  0x000020e5d259f77f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000020e5d259f77f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000020e5d259f77f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000020e5d25a0385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000020e5d259fead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000020c1f68c9959 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:244 &lt;platform-bus-x86.so&gt;+0x2d0959
  #5    0x000020c1f68c65a9 in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:137 &lt;platform-bus-x86.so&gt;+0x2cd5a9
  #6    0x000020c1f68efda9 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6da9
  #7    0x000020c1f68c1806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #8    0x000020c1f68ccef2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3ef2
  #9    0x000020c1f68cd26d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d426d
  #10   0x000020c1f66e4d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #11   0x000020c1f66ea94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #12   0x000020c1f6776af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #13   0x000020c1f669eb44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #14   0x000020c1f66b06f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #15.1 0x000020c1f66ba8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15   0x000020c1f66ba8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #16.2 0x000020c1f68ff86c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x30686c
  #16.1 0x000020c1f68ff86c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x30686c
  #16   0x000020c1f68ff86c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x30686c
  #17.1 0x000022d99b37bd91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x000022d99b37bd91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #18   0x000022d99b374bc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #19   0x000022d99b3748dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #20   0x000022d99b3656a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #21   0x000022d99b36c4c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #22   0x000022d99b36d2c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #23.1 0x000022d99b37881e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x000022d99b37881e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #24   0x000022d99b374e7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #25.1 0x000022d99b36e964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x000022d99b36e964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #26   0x000022d99b36e35d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #27.1 0x000022d99b378c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #27   0x000022d99b378c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #28.1 0x000022d99b39aead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x000022d99b39aead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #29   0x000022d99b39c78f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #30   0x00004230f4a33edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #31   0x00004230f4b6496d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

and

  #0    0x00002357f60edb6d in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:257 &lt;platform-bus-x86.so&gt;+0x2d0b6d
  #1.2  0x0000212756f4777f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x0000212756f4777f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x0000212756f4777f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x0000212756f48385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x0000212756f47ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x00002357f60edb6d in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:257 &lt;platform-bus-x86.so&gt;+0x2d0b6d
  #5    0x00002357f60ea5a9 in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:137 &lt;platform-bus-x86.so&gt;+0x2cd5a9
  #6    0x00002357f6113d09 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6d09
  #7    0x00002357f60e5806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #8    0x00002357f60f0e52 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3e52
  #9    0x00002357f60f11cd in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d41cd
  #10   0x00002357f5f08d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #11   0x00002357f5f0e94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #12   0x00002357f5f9aaf2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #13   0x00002357f5ec2b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #14   0x00002357f5ed46f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #15.1 0x00002357f5ede8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15   0x00002357f5ede8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #16.2 0x00002357f61237cc in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x3067cc
  #16.1 0x00002357f61237cc in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x3067cc
  #16   0x00002357f61237cc in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x3067cc
  #17.1 0x000023df096b1d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x000023df096b1d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #18   0x000023df096aabc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #19   0x000023df096aa8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #20   0x000023df0969b6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #21   0x000023df096a24c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #22   0x000023df096a32c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #23.1 0x000023df096ae81e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x000023df096ae81e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #24   0x000023df096aae7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #25.1 0x000023df096a4964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x000023df096a4964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #26   0x000023df096a435d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #27.1 0x000023df096aec00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #27   0x000023df096aec00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #28.1 0x000023df096d0ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x000023df096d0ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #29   0x000023df096d278f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #30   0x0000424c7690eedc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #31   0x0000424c76a3f96d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

and

  #0    0x000020883e0b9c01 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:334 &lt;platform-bus-x86.so&gt;+0x2d0c01
  #1.2  0x000022cae2d8677f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000022cae2d8677f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000022cae2d8677f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000022cae2d87385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000022cae2d86ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000020883e0b9c01 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:334 &lt;platform-bus-x86.so&gt;+0x2d0c01
  #5    0x000020883e0b65a9 in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:137 &lt;platform-bus-x86.so&gt;+0x2cd5a9
  #6    0x000020883e0dfd89 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6d89
  #7    0x000020883e0b1806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #8    0x000020883e0bced2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3ed2
  #9    0x000020883e0bd24d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d424d
  #10   0x000020883ded4d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #11   0x000020883deda94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #12   0x000020883df66af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #13   0x000020883de8eb44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #14   0x000020883dea06f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #15.1 0x000020883deaa8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15   0x000020883deaa8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #16.2 0x000020883e0ef84c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x30684c
  #16.1 0x000020883e0ef84c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x30684c
  #16   0x000020883e0ef84c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x30684c
  #17.1 0x000021ae7c20cd91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x000021ae7c20cd91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #18   0x000021ae7c205bc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #19   0x000021ae7c2058dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #20   0x000021ae7c1f66a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #21   0x000021ae7c1fd4c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #22   0x000021ae7c1fe2c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #23.1 0x000021ae7c20981e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x000021ae7c20981e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #24   0x000021ae7c205e7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #25.1 0x000021ae7c1ff964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x000021ae7c1ff964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #26   0x000021ae7c1ff35d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #27.1 0x000021ae7c209c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #27   0x000021ae7c209c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #28.1 0x000021ae7c22bead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x000021ae7c22bead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #29   0x000021ae7c22d78f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #30   0x000042b2518e3edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #31   0x000042b251a1496d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/b3317239
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: Avoid undefined behavior: member access within misaligned address</title>
<updated>2023-04-06T18:29:11+00:00</updated>
<author>
<name>Tamir Duberstein</name>
<email>tamird@google.com</email>
</author>
<published>2023-04-05T13:46:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=bf44c56a99774339f73e665cfbff429dd537914e'/>
<id>bf44c56a99774339f73e665cfbff429dd537914e</id>
<content type='text'>
ACPICA commit 8ea5ada64b48dada42dbd5f0f58a9ce18f882ede

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x000020d00518f81a in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:104 &lt;platform-bus-x86.so&gt;+0x2cd81a
  #1.2  0x00002348b567277f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x00002348b567277f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x00002348b567277f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x00002348b5673385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x00002348b5672ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000020d00518f81a in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:104 &lt;platform-bus-x86.so&gt;+0x2cd81a
  #5    0x000020d0051b8ea9 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6ea9
  #6    0x000020d00518a806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #7    0x000020d005195ff2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3ff2
  #8    0x000020d00519636d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d436d
  #9    0x000020d004fadd48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #10   0x000020d004fb394d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #11   0x000020d00503faf2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #12   0x000020d004f67b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #13   0x000020d004f796f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #14.1 0x000020d004f838ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #14   0x000020d004f838ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15.2 0x000020d0051c896c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x30696c
  #15.1 0x000020d0051c896c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x30696c
  #15   0x000020d0051c896c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x30696c
  #16.1 0x00002061a33d3d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #16   0x00002061a33d3d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x00002061a33ccbc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #18   0x00002061a33cc8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #19   0x00002061a33bd6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #20   0x00002061a33c44c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #21   0x00002061a33c52c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #22.1 0x00002061a33d081e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #22   0x00002061a33d081e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x00002061a33cce7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #24.1 0x00002061a33c6964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #24   0x00002061a33c6964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x00002061a33c635d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #26.1 0x00002061a33d0c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #26   0x00002061a33d0c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #27.1 0x00002061a33f2ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #27   0x00002061a33f2ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x00002061a33f478f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #29   0x00004262135b7edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #30   0x00004262136e896d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/8ea5ada6
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit 8ea5ada64b48dada42dbd5f0f58a9ce18f882ede

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x000020d00518f81a in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:104 &lt;platform-bus-x86.so&gt;+0x2cd81a
  #1.2  0x00002348b567277f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x00002348b567277f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x00002348b567277f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x00002348b5673385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x00002348b5672ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000020d00518f81a in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:104 &lt;platform-bus-x86.so&gt;+0x2cd81a
  #5    0x000020d0051b8ea9 in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x2f6ea9
  #6    0x000020d00518a806 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x2c8806
  #7    0x000020d005195ff2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d3ff2
  #8    0x000020d00519636d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d436d
  #9    0x000020d004fadd48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #10   0x000020d004fb394d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #11   0x000020d00503faf2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #12   0x000020d004f67b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #13   0x000020d004f796f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #14.1 0x000020d004f838ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #14   0x000020d004f838ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #15.2 0x000020d0051c896c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x30696c
  #15.1 0x000020d0051c896c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x30696c
  #15   0x000020d0051c896c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x30696c
  #16.1 0x00002061a33d3d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #16   0x00002061a33d3d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #17   0x00002061a33ccbc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #18   0x00002061a33cc8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #19   0x00002061a33bd6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #20   0x00002061a33c44c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #21   0x00002061a33c52c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #22.1 0x00002061a33d081e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #22   0x00002061a33d081e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #23   0x00002061a33cce7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #24.1 0x00002061a33c6964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #24   0x00002061a33c6964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #25   0x00002061a33c635d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #26.1 0x00002061a33d0c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #26   0x00002061a33d0c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #27.1 0x00002061a33f2ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #27   0x00002061a33f2ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #28   0x00002061a33f478f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #29   0x00004262135b7edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #30   0x00004262136e896d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/8ea5ada6
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: Avoid undefined behavior: member access within misaligned address</title>
<updated>2023-04-06T18:29:11+00:00</updated>
<author>
<name>Tamir Duberstein</name>
<email>tamird@google.com</email>
</author>
<published>2023-04-05T13:45:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5bd2315bd2e480cb1462a01d44186d3a767b19ba'/>
<id>5bd2315bd2e480cb1462a01d44186d3a767b19ba</id>
<content type='text'>
ACPICA commit 60cbb20c009fd67e7b973d67b5dcb4a7b12681d9

Before this change we see the following UBSAN stack traces in Fuchsia:

  #0    0x0000219ce3426bd7 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:631 &lt;platform-bus-x86.so&gt;+0x2cbbd7
  #1.2  0x00002240d84b077f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x00002240d84b077f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x00002240d84b077f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x00002240d84b1385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x00002240d84b0ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x0000219ce3426bd7 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:631 &lt;platform-bus-x86.so&gt;+0x2cbbd7
  #5    0x0000219ce3423777 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:178 &lt;platform-bus-x86.so&gt;+0x2c8777
  #6    0x0000219ce342f1b2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d41b2
  #7    0x0000219ce342f52d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d452d
  #8    0x0000219ce3246d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #9    0x0000219ce324c94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #10   0x0000219ce32d8af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #11   0x0000219ce3200b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #12   0x0000219ce32126f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #13.1 0x0000219ce321c8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #13   0x0000219ce321c8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #14.2 0x0000219ce3461b2c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x306b2c
  #14.1 0x0000219ce3461b2c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x306b2c
  #14   0x0000219ce3461b2c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x306b2c
  #15.1 0x000022cc55016d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #15   0x000022cc55016d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #16   0x000022cc5500fbc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #17   0x000022cc5500f8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #18   0x000022cc550006a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #19   0x000022cc550074c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #20   0x000022cc550082c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #21.1 0x000022cc5501381e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #21   0x000022cc5501381e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #22   0x000022cc5500fe7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #23.1 0x000022cc55009964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #23   0x000022cc55009964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #24   0x000022cc5500935d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #25.1 0x000022cc55013c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #25   0x000022cc55013c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #26.1 0x000022cc55035ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #26   0x000022cc55035ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #27   0x000022cc5503778f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #28   0x000042d43f9f1edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #29   0x000042d43fb2296d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

and

  #0    0x000022db2bfa3753 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:704 &lt;platform-bus-x86.so&gt;+0x2cb753
  #1.2  0x000020c421f9777f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000020c421f9777f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000020c421f9777f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000020c421f98385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000020c421f97ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000022db2bfa3753 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:704 &lt;platform-bus-x86.so&gt;+0x2cb753
  #5    0x000022db2bfa0777 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:178 &lt;platform-bus-x86.so&gt;+0x2c8777
  #6    0x000022db2bfac0f2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d40f2
  #7    0x000022db2bfac46d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d446d
  #8    0x000022db2bdc3d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #9    0x000022db2bdc994d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #10   0x000022db2be55af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #11   0x000022db2bd7db44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #12   0x000022db2bd8f6f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #13.1 0x000022db2bd998ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #13   0x000022db2bd998ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #14.2 0x000022db2bfdea6c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x306a6c
  #14.1 0x000022db2bfdea6c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x306a6c
  #14   0x000022db2bfdea6c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x306a6c
  #15.1 0x0000216d819f2d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #15   0x0000216d819f2d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #16   0x0000216d819ebbc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #17   0x0000216d819eb8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #18   0x0000216d819dc6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #19   0x0000216d819e34c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #20   0x0000216d819e42c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #21.1 0x0000216d819ef81e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #21   0x0000216d819ef81e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #22   0x0000216d819ebe7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #23.1 0x0000216d819e5964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #23   0x0000216d819e5964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #24   0x0000216d819e535d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #25.1 0x0000216d819efc00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #25   0x0000216d819efc00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #26.1 0x0000216d81a11ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #26   0x0000216d81a11ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #27   0x0000216d81a1378f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #28   0x0000417ba4b4bedc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #29   0x0000417ba4c7c96d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/60cbb20c
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit 60cbb20c009fd67e7b973d67b5dcb4a7b12681d9

Before this change we see the following UBSAN stack traces in Fuchsia:

  #0    0x0000219ce3426bd7 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:631 &lt;platform-bus-x86.so&gt;+0x2cbbd7
  #1.2  0x00002240d84b077f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x00002240d84b077f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x00002240d84b077f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x00002240d84b1385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x00002240d84b0ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x0000219ce3426bd7 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:631 &lt;platform-bus-x86.so&gt;+0x2cbbd7
  #5    0x0000219ce3423777 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:178 &lt;platform-bus-x86.so&gt;+0x2c8777
  #6    0x0000219ce342f1b2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d41b2
  #7    0x0000219ce342f52d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d452d
  #8    0x0000219ce3246d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #9    0x0000219ce324c94d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #10   0x0000219ce32d8af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #11   0x0000219ce3200b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #12   0x0000219ce32126f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #13.1 0x0000219ce321c8ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #13   0x0000219ce321c8ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #14.2 0x0000219ce3461b2c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x306b2c
  #14.1 0x0000219ce3461b2c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x306b2c
  #14   0x0000219ce3461b2c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x306b2c
  #15.1 0x000022cc55016d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #15   0x000022cc55016d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #16   0x000022cc5500fbc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #17   0x000022cc5500f8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #18   0x000022cc550006a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #19   0x000022cc550074c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #20   0x000022cc550082c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #21.1 0x000022cc5501381e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #21   0x000022cc5501381e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #22   0x000022cc5500fe7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #23.1 0x000022cc55009964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #23   0x000022cc55009964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #24   0x000022cc5500935d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #25.1 0x000022cc55013c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #25   0x000022cc55013c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #26.1 0x000022cc55035ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #26   0x000022cc55035ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #27   0x000022cc5503778f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #28   0x000042d43f9f1edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #29   0x000042d43fb2296d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

and

  #0    0x000022db2bfa3753 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:704 &lt;platform-bus-x86.so&gt;+0x2cb753
  #1.2  0x000020c421f9777f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000020c421f9777f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000020c421f9777f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000020c421f98385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000020c421f97ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x000022db2bfa3753 in acpi_rs_get_list_length(u8*, u32, acpi_size*) ../../third_party/acpica/source/components/resources/rscalc.c:704 &lt;platform-bus-x86.so&gt;+0x2cb753
  #5    0x000022db2bfa0777 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:178 &lt;platform-bus-x86.so&gt;+0x2c8777
  #6    0x000022db2bfac0f2 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x2d40f2
  #7    0x000022db2bfac46d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d446d
  #8    0x000022db2bdc3d48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #9    0x000022db2bdc994d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #10   0x000022db2be55af2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #11   0x000022db2bd7db44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #12   0x000022db2bd8f6f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #13.1 0x000022db2bd998ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #13   0x000022db2bd998ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #14.2 0x000022db2bfdea6c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x306a6c
  #14.1 0x000022db2bfdea6c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x306a6c
  #14   0x000022db2bfdea6c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x306a6c
  #15.1 0x0000216d819f2d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #15   0x0000216d819f2d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #16   0x0000216d819ebbc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #17   0x0000216d819eb8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #18   0x0000216d819dc6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #19   0x0000216d819e34c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #20   0x0000216d819e42c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #21.1 0x0000216d819ef81e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #21   0x0000216d819ef81e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #22   0x0000216d819ebe7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #23.1 0x0000216d819e5964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #23   0x0000216d819e5964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #24   0x0000216d819e535d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #25.1 0x0000216d819efc00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #25   0x0000216d819efc00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #26.1 0x0000216d81a11ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #26   0x0000216d81a11ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #27   0x0000216d81a1378f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #28   0x0000417ba4b4bedc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #29   0x0000417ba4c7c96d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/60cbb20c
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: Avoid undefined behavior: member access within misaligned address</title>
<updated>2023-04-06T18:29:11+00:00</updated>
<author>
<name>Tamir Duberstein</name>
<email>tamird@google.com</email>
</author>
<published>2023-04-05T13:44:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=218387e6cf49d0a81d1428dac91f827a13d2cd4b'/>
<id>218387e6cf49d0a81d1428dac91f827a13d2cd4b</id>
<content type='text'>
ACPICA commit 7b23bdc37432f0b7fb6c3b6aa76debdcb7eb18c3

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x00002132da6299a1 in acpi_ut_validate_resource(struct acpi_walk_state*, void*, u8*) ../../third_party/acpica/source/components/utilities/utresrc.c:426 &lt;platform-bus-x86.so&gt;+0x2f79a1
  #1.2  0x000023e6cd58577f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000023e6cd58577f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000023e6cd58577f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000023e6cd586385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000023e6cd585ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x00002132da6299a1 in acpi_ut_validate_resource(struct acpi_walk_state*, void*, u8*) ../../third_party/acpica/source/components/utilities/utresrc.c:426 &lt;platform-bus-x86.so&gt;+0x2f79a1
  #5    0x00002132da628ffe in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:216 &lt;platform-bus-x86.so&gt;+0x2f6ffe
  #6    0x00002132da5b2405 in acpi_ex_concat_template(union acpi_operand_object*, union acpi_operand_object*, union acpi_operand_object**, struct acpi_walk_state*) ../../third_party/acpica/source/components/executer/exconcat.c:414 &lt;platform-bus-x86.so&gt;+0x280405
  #7    0x00002132da5ad5a4 in acpi_ex_opcode_2A_1T_1R(struct acpi_walk_state*) ../../third_party/acpica/source/components/executer/exoparg2.c:383 &lt;platform-bus-x86.so&gt;+0x27b5a4
  #8    0x00002132da57ee7d in acpi_ds_exec_end_op(struct acpi_walk_state*) ../../third_party/acpica/source/components/dispatcher/dswexec.c:482 &lt;platform-bus-x86.so&gt;+0x24ce7d
  #9    0x00002132da5ed196 in acpi_ps_parse_loop(struct acpi_walk_state*) ../../third_party/acpica/source/components/parser/psloop.c:554 &lt;platform-bus-x86.so&gt;+0x2bb196
  #10   0x00002132da5ea458 in acpi_ps_parse_aml(struct acpi_walk_state*) ../../third_party/acpica/source/components/parser/psparse.c:525 &lt;platform-bus-x86.so&gt;+0x2b8458
  #11   0x00002132da5f8a92 in acpi_ps_execute_method(struct acpi_evaluate_info*) ../../third_party/acpica/source/components/parser/psxface.c:244 &lt;platform-bus-x86.so&gt;+0x2c6a92
  #12   0x00002132da55c2b2 in acpi_ns_evaluate(struct acpi_evaluate_info*) ../../third_party/acpica/source/components/namespace/nseval.c:250 &lt;platform-bus-x86.so&gt;+0x22a2b2
  #13   0x00002132da61fd45 in acpi_ut_evaluate_object(struct acpi_namespace_node*, const char*, u32, union acpi_operand_object**) ../../third_party/acpica/source/components/utilities/uteval.c:100 &lt;platform-bus-x86.so&gt;+0x2edd45
  #14   0x00002132da606197 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:757 &lt;platform-bus-x86.so&gt;+0x2d4197
  #15   0x00002132da60652d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d452d
  #16   0x00002132da41dd48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #17   0x00002132da42394d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #18   0x00002132da4afaf2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #19   0x00002132da3d7b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #20   0x00002132da3e96f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #21.1 0x00002132da3f38ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #21   0x00002132da3f38ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #22.2 0x00002132da638c6c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x306c6c
  #22.1 0x00002132da638c6c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x306c6c
  #22   0x00002132da638c6c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x306c6c
  #23.1 0x000022c67b305d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #23   0x000022c67b305d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #24   0x000022c67b2febc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #25   0x000022c67b2fe8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #26   0x000022c67b2ef6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #27   0x000022c67b2f64c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #28   0x000022c67b2f72c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #29.1 0x000022c67b30281e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #29   0x000022c67b30281e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #30   0x000022c67b2fee7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #31.1 0x000022c67b2f8964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #31   0x000022c67b2f8964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #32   0x000022c67b2f835d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #33.1 0x000022c67b302c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #33   0x000022c67b302c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #34.1 0x000022c67b324ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #34   0x000022c67b324ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #35   0x000022c67b32678f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #36   0x0000431cc3246edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #37   0x0000431cc337796d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/7b23bdc3
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit 7b23bdc37432f0b7fb6c3b6aa76debdcb7eb18c3

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x00002132da6299a1 in acpi_ut_validate_resource(struct acpi_walk_state*, void*, u8*) ../../third_party/acpica/source/components/utilities/utresrc.c:426 &lt;platform-bus-x86.so&gt;+0x2f79a1
  #1.2  0x000023e6cd58577f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000023e6cd58577f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000023e6cd58577f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000023e6cd586385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000023e6cd585ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x00002132da6299a1 in acpi_ut_validate_resource(struct acpi_walk_state*, void*, u8*) ../../third_party/acpica/source/components/utilities/utresrc.c:426 &lt;platform-bus-x86.so&gt;+0x2f79a1
  #5    0x00002132da628ffe in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:216 &lt;platform-bus-x86.so&gt;+0x2f6ffe
  #6    0x00002132da5b2405 in acpi_ex_concat_template(union acpi_operand_object*, union acpi_operand_object*, union acpi_operand_object**, struct acpi_walk_state*) ../../third_party/acpica/source/components/executer/exconcat.c:414 &lt;platform-bus-x86.so&gt;+0x280405
  #7    0x00002132da5ad5a4 in acpi_ex_opcode_2A_1T_1R(struct acpi_walk_state*) ../../third_party/acpica/source/components/executer/exoparg2.c:383 &lt;platform-bus-x86.so&gt;+0x27b5a4
  #8    0x00002132da57ee7d in acpi_ds_exec_end_op(struct acpi_walk_state*) ../../third_party/acpica/source/components/dispatcher/dswexec.c:482 &lt;platform-bus-x86.so&gt;+0x24ce7d
  #9    0x00002132da5ed196 in acpi_ps_parse_loop(struct acpi_walk_state*) ../../third_party/acpica/source/components/parser/psloop.c:554 &lt;platform-bus-x86.so&gt;+0x2bb196
  #10   0x00002132da5ea458 in acpi_ps_parse_aml(struct acpi_walk_state*) ../../third_party/acpica/source/components/parser/psparse.c:525 &lt;platform-bus-x86.so&gt;+0x2b8458
  #11   0x00002132da5f8a92 in acpi_ps_execute_method(struct acpi_evaluate_info*) ../../third_party/acpica/source/components/parser/psxface.c:244 &lt;platform-bus-x86.so&gt;+0x2c6a92
  #12   0x00002132da55c2b2 in acpi_ns_evaluate(struct acpi_evaluate_info*) ../../third_party/acpica/source/components/namespace/nseval.c:250 &lt;platform-bus-x86.so&gt;+0x22a2b2
  #13   0x00002132da61fd45 in acpi_ut_evaluate_object(struct acpi_namespace_node*, const char*, u32, union acpi_operand_object**) ../../third_party/acpica/source/components/utilities/uteval.c:100 &lt;platform-bus-x86.so&gt;+0x2edd45
  #14   0x00002132da606197 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:757 &lt;platform-bus-x86.so&gt;+0x2d4197
  #15   0x00002132da60652d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x2d452d
  #16   0x00002132da41dd48 in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0xebd48
  #17   0x00002132da42394d in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0xf194d
  #18   0x00002132da4afaf2 in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x17daf2
  #19   0x00002132da3d7b44 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0xa5b44
  #20   0x00002132da3e96f7 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0xb76f7
  #21.1 0x00002132da3f38ea in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0xc18ea
  #21   0x00002132da3f38ea in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0xc18ea
  #22.2 0x00002132da638c6c in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x306c6c
  #22.1 0x00002132da638c6c in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x306c6c
  #22   0x00002132da638c6c in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x306c6c
  #23.1 0x000022c67b305d91 in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0x4bd91
  #23   0x000022c67b305d91 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4bd91
  #24   0x000022c67b2febc9 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44bc9
  #25   0x000022c67b2fe8dd in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0x448dd
  #26   0x000022c67b2ef6a6 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x356a6
  #27   0x000022c67b2f64c8 in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0x3c4c8
  #28   0x000022c67b2f72c1 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0x3d2c1
  #29.1 0x000022c67b30281e in λ(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;, const driver_runtime::Dispatcher::create_with_adder::(anon class)*) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0x4881e
  #29   0x000022c67b30281e in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0x4881e
  #30   0x000022c67b2fee7e in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0x44e7e
  #31.1 0x000022c67b2f8964 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0x3e964
  #31   0x000022c67b2f8964 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0x3e964
  #32   0x000022c67b2f835d in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0x3e35d
  #33.1 0x000022c67b302c00 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, zx_status_t, zx_packet_signal_t const*, async_dispatcher_t*, async::wait_base*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0x48c00
  #33   0x000022c67b302c00 in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0x48c00
  #34.1 0x000022c67b324ead in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:415 &lt;libdriver_runtime.so&gt;+0x6aead
  #34   0x000022c67b324ead in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x6aead
  #35   0x000022c67b32678f in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x6c78f
  #36   0x0000431cc3246edc in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7edc
  #37   0x0000431cc337796d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x20896d

Link: https://github.com/acpica/acpica/commit/7b23bdc3
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ACPICA: Avoid undefined behavior: member access within misaligned address</title>
<updated>2023-04-06T18:29:11+00:00</updated>
<author>
<name>Tamir Duberstein</name>
<email>tamird@google.com</email>
</author>
<published>2023-04-05T13:44:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=24d9609b3cd2e7ddf7b9417a96c5b474086a38e2'/>
<id>24d9609b3cd2e7ddf7b9417a96c5b474086a38e2</id>
<content type='text'>
ACPICA commit c14708336bd18552b28643575de7b5beb9b864e9

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x0000220c98288eba in acpi_rs_get_address_common(struct acpi_resource*, union aml_resource*) ../../third_party/acpica/source/components/resources/rsaddr.c:331 &lt;platform-bus-x86.so&gt;+0x8f6eba
  #1.2  0x000023625f46077f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000023625f46077f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000023625f46077f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000023625f461385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000023625f460ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x0000220c98288eba in acpi_rs_get_address_common(struct acpi_resource*, union aml_resource*) ../../third_party/acpica/source/components/resources/rsaddr.c:331 &lt;platform-bus-x86.so&gt;+0x8f6eba
  #5    0x0000220c9828ea57 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:352 &lt;platform-bus-x86.so&gt;+0x8fca57
  #6    0x0000220c9828992c in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:132 &lt;platform-bus-x86.so&gt;+0x8f792c
  #7    0x0000220c982d1cfc in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x93fcfc
  #8    0x0000220c98281e46 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x8efe46
  #9    0x0000220c98293b51 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x901b51
  #10   0x0000220c9829438d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x90238d
  #11   0x0000220c97db272b in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0x42072b
  #12   0x0000220c97dcec59 in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0x43cc59
  #13   0x0000220c97f94a3f in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x602a3f
  #14   0x0000220c97c642c7 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0x2d22c7
  #15   0x0000220c97caf3e6 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0x31d3e6
  #16   0x0000220c97cd72ae in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0x3452ae
  #17   0x0000220c97cd7223 in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0x345223
  #18   0x0000220c97f48eb0 in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x5b6eb0
  #19   0x0000220c97f48d2a in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x5b6d2a
  #20   0x0000220c982f9245 in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x967245
  #21   0x000022e2aa1cd91e in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0xed91e
  #22   0x000022e2aa1cd621 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0xed621
  #23   0x000022e2aa1a8482 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0xc8482
  #24   0x000022e2aa1a80f8 in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0xc80f8
  #25   0x000022e2aa17fc76 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x9fc76
  #26   0x000022e2aa18c7ef in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0xac7ef
  #27   0x000022e2aa18fd67 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0xafd67
  #28   0x000022e2aa1bc9a2 in λ(const driver_runtime::Dispatcher::create_with_adder::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0xdc9a2
  #29   0x000022e2aa1bc6d2 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0xdc6d2
  #30   0x000022e2aa1aa1e5 in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0xca1e5
  #31   0x000022e2aa1a9e32 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0xc9e32
  #32   0x000022e2aa193444 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0xb3444
  #33   0x000022e2aa192feb in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0xb2feb
  #34   0x000022e2aa1bcf74 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0xdcf74
  #35   0x000022e2aa1bd1cb in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0xdd1cb
  #36   0x000022e2aa2303a9 in async_loop_dispatch_wait(async_loop_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async-loop/loop.c:381 &lt;libdriver_runtime.so&gt;+0x1503a9
  #37   0x000022e2aa229a82 in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:330 &lt;libdriver_runtime.so&gt;+0x149a82
  #38   0x000022e2aa229102 in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x149102
  #39   0x000022e2aa22aeb7 in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x14aeb7
  #40   0x000041a874980f1c in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7f1c
  #41   0x000041a874aabe8d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x202e8d

Link: https://github.com/acpica/acpica/commit/c1470833
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ACPICA commit c14708336bd18552b28643575de7b5beb9b864e9

Before this change we see the following UBSAN stack trace in Fuchsia:

  #0    0x0000220c98288eba in acpi_rs_get_address_common(struct acpi_resource*, union aml_resource*) ../../third_party/acpica/source/components/resources/rsaddr.c:331 &lt;platform-bus-x86.so&gt;+0x8f6eba
  #1.2  0x000023625f46077f in ubsan_get_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:41 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1.1  0x000023625f46077f in maybe_print_stack_trace() compiler-rt/lib/ubsan/ubsan_diag.cpp:51 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #1    0x000023625f46077f in ~scoped_report() compiler-rt/lib/ubsan/ubsan_diag.cpp:387 &lt;libclang_rt.asan.so&gt;+0x3d77f
  #2    0x000023625f461385 in handletype_mismatch_impl() compiler-rt/lib/ubsan/ubsan_handlers.cpp:137 &lt;libclang_rt.asan.so&gt;+0x3e385
  #3    0x000023625f460ead in compiler-rt/lib/ubsan/ubsan_handlers.cpp:142 &lt;libclang_rt.asan.so&gt;+0x3dead
  #4    0x0000220c98288eba in acpi_rs_get_address_common(struct acpi_resource*, union aml_resource*) ../../third_party/acpica/source/components/resources/rsaddr.c:331 &lt;platform-bus-x86.so&gt;+0x8f6eba
  #5    0x0000220c9828ea57 in acpi_rs_convert_aml_to_resource(struct acpi_resource*, union aml_resource*, struct acpi_rsconvert_info*) ../../third_party/acpica/source/components/resources/rsmisc.c:352 &lt;platform-bus-x86.so&gt;+0x8fca57
  #6    0x0000220c9828992c in acpi_rs_convert_aml_to_resources(u8*, u32, u32, u8, void**) ../../third_party/acpica/source/components/resources/rslist.c:132 &lt;platform-bus-x86.so&gt;+0x8f792c
  #7    0x0000220c982d1cfc in acpi_ut_walk_aml_resources(struct acpi_walk_state*, u8*, acpi_size, acpi_walk_aml_callback, void**) ../../third_party/acpica/source/components/utilities/utresrc.c:234 &lt;platform-bus-x86.so&gt;+0x93fcfc
  #8    0x0000220c98281e46 in acpi_rs_create_resource_list(union acpi_operand_object*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rscreate.c:199 &lt;platform-bus-x86.so&gt;+0x8efe46
  #9    0x0000220c98293b51 in acpi_rs_get_method_data(acpi_handle, const char*, struct acpi_buffer*) ../../third_party/acpica/source/components/resources/rsutils.c:770 &lt;platform-bus-x86.so&gt;+0x901b51
  #10   0x0000220c9829438d in acpi_walk_resources(acpi_handle, char*, acpi_walk_resource_callback, void*) ../../third_party/acpica/source/components/resources/rsxface.c:731 &lt;platform-bus-x86.so&gt;+0x90238d
  #11   0x0000220c97db272b in acpi::acpi_impl::walk_resources(acpi::acpi_impl*, acpi_handle, const char*, acpi::Acpi::resources_callable) ../../src/devices/board/lib/acpi/acpi-impl.cc:41 &lt;platform-bus-x86.so&gt;+0x42072b
  #12   0x0000220c97dcec59 in acpi::device_builder::gather_resources(acpi::device_builder*, acpi::Acpi*, fidl::any_arena&amp;, acpi::Manager*, acpi::device_builder::gather_resources_callback) ../../src/devices/board/lib/acpi/device-builder.cc:52 &lt;platform-bus-x86.so&gt;+0x43cc59
  #13   0x0000220c97f94a3f in acpi::Manager::configure_discovered_devices(acpi::Manager*) ../../src/devices/board/lib/acpi/manager.cc:75 &lt;platform-bus-x86.so&gt;+0x602a3f
  #14   0x0000220c97c642c7 in publish_acpi_devices(acpi::Manager*, zx_device_t*, zx_device_t*) ../../src/devices/board/drivers/x86/acpi-nswalk.cc:102 &lt;platform-bus-x86.so&gt;+0x2d22c7
  #15   0x0000220c97caf3e6 in x86::X86::do_init(x86::X86*) ../../src/devices/board/drivers/x86/x86.cc:65 &lt;platform-bus-x86.so&gt;+0x31d3e6
  #16   0x0000220c97cd72ae in λ(x86::X86::ddk_init::(anon class)*) ../../src/devices/board/drivers/x86/x86.cc:82 &lt;platform-bus-x86.so&gt;+0x3452ae
  #17   0x0000220c97cd7223 in fit::internal::target&lt;(lambda at../../src/devices/board/drivers/x86/x86.cc:81:19), false, false, void&gt;::invoke(void*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:181 &lt;platform-bus-x86.so&gt;+0x345223
  #18   0x0000220c97f48eb0 in fit::internal::function_base&lt;16UL, false, void()&gt;::invoke(const fit::internal::function_base&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;platform-bus-x86.so&gt;+0x5b6eb0
  #19   0x0000220c97f48d2a in fit::function_impl&lt;16UL, false, void()&gt;::operator()(const fit::function_impl&lt;16UL, false, void ()&gt;*) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;platform-bus-x86.so&gt;+0x5b6d2a
  #20   0x0000220c982f9245 in async::internal::retained_task::Handler(async_dispatcher_t*, async_task_t*, zx_status_t) ../../zircon/system/ulib/async/task.cc:25 &lt;platform-bus-x86.so&gt;+0x967245
  #21   0x000022e2aa1cd91e in λ(const driver_runtime::Dispatcher::post_task::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/dispatcher.cc:715 &lt;libdriver_runtime.so&gt;+0xed91e
  #22   0x000022e2aa1cd621 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:714:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0xed621
  #23   0x000022e2aa1a8482 in fit::internal::function_base&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::invoke(const fit::internal::function_base&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0xc8482
  #24   0x000022e2aa1a80f8 in fit::callback_impl&lt;24UL, true, void(std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt;&gt;, int)&gt;::operator()(fit::callback_impl&lt;24UL, true, void (std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int)&gt;*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, int) ../../sdk/lib/fit/include/lib/fit/function.h:451 &lt;libdriver_runtime.so&gt;+0xc80f8
  #25   0x000022e2aa17fc76 in driver_runtime::callback_request::Call(driver_runtime::callback_request*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;, zx_status_t) ../../src/devices/bin/driver_runtime/callback_request.h:67 &lt;libdriver_runtime.so&gt;+0x9fc76
  #26   0x000022e2aa18c7ef in driver_runtime::Dispatcher::dispatch_callback(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::callback_request, std::__2::default_delete&lt;driver_runtime::callback_request&gt; &gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1093 &lt;libdriver_runtime.so&gt;+0xac7ef
  #27   0x000022e2aa18fd67 in driver_runtime::Dispatcher::dispatch_callbacks(driver_runtime::Dispatcher*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:1169 &lt;libdriver_runtime.so&gt;+0xafd67
  #28   0x000022e2aa1bc9a2 in λ(const driver_runtime::Dispatcher::create_with_adder::(anon class)*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.cc:338 &lt;libdriver_runtime.so&gt;+0xdc9a2
  #29   0x000022e2aa1bc6d2 in fit::internal::target&lt;(lambda at../../src/devices/bin/driver_runtime/dispatcher.cc:337:7), true, false, void, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;&gt;::invoke(void*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:128 &lt;libdriver_runtime.so&gt;+0xdc6d2
  #30   0x000022e2aa1aa1e5 in fit::internal::function_base&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::invoke(const fit::internal::function_base&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/internal/function.h:505 &lt;libdriver_runtime.so&gt;+0xca1e5
  #31   0x000022e2aa1a9e32 in fit::function_impl&lt;8UL, true, void(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt;&gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;::operator()(const fit::function_impl&lt;8UL, true, void (std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;)&gt;*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../sdk/lib/fit/include/lib/fit/function.h:300 &lt;libdriver_runtime.so&gt;+0xc9e32
  #32   0x000022e2aa193444 in driver_runtime::Dispatcher::event_waiter::invoke_callback(driver_runtime::Dispatcher::event_waiter*, std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, fbl::ref_ptr&lt;driver_runtime::Dispatcher&gt;) ../../src/devices/bin/driver_runtime/dispatcher.h:299 &lt;libdriver_runtime.so&gt;+0xb3444
  #33   0x000022e2aa192feb in driver_runtime::Dispatcher::event_waiter::handle_event(std::__2::unique_ptr&lt;driver_runtime::Dispatcher::event_waiter, std::__2::default_delete&lt;driver_runtime::Dispatcher::event_waiter&gt; &gt;, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/dispatcher.cc:1259 &lt;libdriver_runtime.so&gt;+0xb2feb
  #34   0x000022e2aa1bcf74 in async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event(async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;*, async_dispatcher_t*, async::wait_base*, zx_status_t, zx_packet_signal_t const*) ../../src/devices/bin/driver_runtime/async_loop_owned_event_handler.h:59 &lt;libdriver_runtime.so&gt;+0xdcf74
  #35   0x000022e2aa1bd1cb in async::wait_method&lt;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;, &amp;async_loop_owned_event_handler&lt;driver_runtime::Dispatcher::event_waiter&gt;::handle_event&gt;::call_handler(async_dispatcher_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async/include/lib/async/cpp/wait.h:201 &lt;libdriver_runtime.so&gt;+0xdd1cb
  #36   0x000022e2aa2303a9 in async_loop_dispatch_wait(async_loop_t*, async_wait_t*, zx_status_t, zx_packet_signal_t const*) ../../zircon/system/ulib/async-loop/loop.c:381 &lt;libdriver_runtime.so&gt;+0x1503a9
  #37   0x000022e2aa229a82 in async_loop_run_once(async_loop_t*, zx_time_t) ../../zircon/system/ulib/async-loop/loop.c:330 &lt;libdriver_runtime.so&gt;+0x149a82
  #38   0x000022e2aa229102 in async_loop_run(async_loop_t*, zx_time_t, _Bool) ../../zircon/system/ulib/async-loop/loop.c:288 &lt;libdriver_runtime.so&gt;+0x149102
  #39   0x000022e2aa22aeb7 in async_loop_run_thread(void*) ../../zircon/system/ulib/async-loop/loop.c:840 &lt;libdriver_runtime.so&gt;+0x14aeb7
  #40   0x000041a874980f1c in start_c11(void*) ../../zircon/third_party/ulib/musl/pthread/pthread_create.c:55 &lt;libc.so&gt;+0xd7f1c
  #41   0x000041a874aabe8d in thread_trampoline(uintptr_t, uintptr_t) ../../zircon/system/ulib/runtime/thread.cc:100 &lt;libc.so&gt;+0x202e8d

Link: https://github.com/acpica/acpica/commit/c1470833
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
