Closed sourabhjains closed 4 months ago
1 is a legitimate bug that I missed. I just pushed the fix, but please reopen this if you find that it wasn't fixed.
2 is likely a known breakage in the kernel that unfortunately slipped in for a couple of rcs and stable releases. The comment in the helper explains the situation: https://github.com/osandov/drgn/blob/1832240fc639413530063b1a52b2c3f37b0654f4/drgn/helpers/linux/stackdepot.py#L37-L46 If the kernel you're testing has commit torvalds/linux@3ee34eabac2abb6b1b6fcdebffe18870719ad000 but not torvalds/linux@a6c1d9cb9a68bfa4512248419c4f4d880d19fe90, you'll need to apply the latter. If that doesn't fix it, please let me know.
1 is a legitimate bug that I missed. I just pushed the fix, but please reopen this if you find that it wasn't fixed.
Thanks for the fix. I will try it out.
2 is likely a known breakage in the kernel that unfortunately slipped in for a couple of rcs and stable releases. The comment in the helper explains the situation:
If the kernel you're testing has commit torvalds/linux@3ee34ea but not torvalds/linux@a6c1d9c, you'll need to apply the latter. If that doesn't fix it, please let me know.
Thanks for the info. I will include kernel fix and try again.
Found that the following tests are failing on PowerPC:
def test_identify_vmap(self): self.assertTrue( identify_address(self.prog["drgn_test_vmalloc_va"]).startswith("vmap: 0x") )
Seems like the expected address is
vmap
where as on PowrePC identify_address returnsvmap stack: ...
from identify function.For example:
Expected (x86)
On PowerPC:
Any hint on what is going wrong?
tests.linux_kernel.helpers.test_stackdepot.TestStackDepot)
Seem like
pool_index
is calculated wrong. Doing the following change in stack_depot_fetch function fixes the test:--- a/drgn/helpers/linux/stackdepot.py +++ b/drgn/helpers/linux/stackdepot.py @@ -43,9 +43,12 @@ def stack_depot_fetch(handle: Object) -> Optional[StackTrace]: try: pool_index = handle_parts.pool_index_plus_1 - 1 except AttributeError: