commit | 72fd2e4371be2356b8628d7968f33db6d6a03095 | [log] [tgz] |
---|---|---|
author | Zane Shelley <zshelle@us.ibm.com> | Sat Nov 12 12:14:53 2022 -0600 |
committer | Zane Shelley <zshelle@us.ibm.com> | Sat Nov 12 12:31:18 2022 -0600 |
tree | fbfd906c00f8c7a56e0374da4c5b424e0831ce2c | |
parent | 5a78fa8f149c63d373afb3f164d3a99f3c0f22b1 [diff] |
'heap-use-after-free' error when uninitializing isolator I found an error path in the test simulator where the Flyweight objects are deleted before the uninitialize function is called. The default Flyweight destructor seemed to delete all the shared pointers in iv_index, but not actually clear out iv_index. So when the uninitialize function called Flyweight.clear(), it tried to delete data that was already removed from the heap. The solution was to call clear() from the Flyweight destructor to ensure everything is deleted properly. Change-Id: I485ce08570af7e59d9ec43cb054bce77b6866348 Signed-off-by: Zane Shelley <zshelle@us.ibm.com>
This library is a common, portable code base for isolating errors reported by hardware registers on POWER Systems chips.
The primary consumers (and requirements drivers) will be:
See the primary API definitions for details on how to use this library.
This library can be integrated into a user application's source (either imported, or as a git subtree/submodule) or built as static library.
__HEI_ENABLE_HW_WRITE
: When defined, it will allow hardware write support. Note that the Chip Data Files will contain rules for clearing and masking register bits. Both of which will require modifying hardware registers, which is not allowed by user applications like OpenBMC or FSP firmware.src/include/
in the POWER Systems Hostboot firmware.For a standard OpenBMC release build, you want something like:
meson -Dtests=disabled <build_dir> ninja -C <build_dir> ninja -C <build_dir> install
For a test / debug build, a typical configuration is:
meson -Dtests=enabled <build_dir> ninja -C <build_dir> test