Skip to content

Conversation

rivos-eblot
Copy link

@rivos-eblot rivos-eblot commented Oct 3, 2025

When a smaller block of higher priority is carved out from bigger one (case a2), destination address was set as:

right->dest = right->dest + right->start - VMAP_RANGE(current)->start;

While start offset was calculated correctly, destination base was always intialized as zeros due to right->dest being 0, as it wasn't touched before getting allocated via g_new0().
Current block destination address should be used as the base here.

…tting ranges

When a smaller block of higher priority is carved out from bigger one
(case a2), destination address was set as:

right->dest = right->dest + right->start - VMAP_RANGE(current)->start;

While start offset was calculated correctly, destination base was always
intialized as zeros due to right->dest being 0, as it wasn't touched
before getting allocated via g_new0().
Current block destination address should be used as the base here.

Signed-off-by: Lech Perczak <lperczak@rivosinc.com>
@rivos-eblot rivos-eblot changed the title vmapper: fix setting destination address when splitting ranges ot_vmapper: fix setting destination address when splitting ranges Oct 3, 2025
@rivos-eblot rivos-eblot marked this pull request as draft October 3, 2025 07:44
@rivos-eblot rivos-eblot marked this pull request as ready for review October 3, 2025 13:11
@rivos-eblot rivos-eblot merged commit 5b4a1da into lowRISC:ot-9.2.0 Oct 3, 2025
9 checks passed
@rivos-eblot rivos-eblot deleted the dev/ebl/vmapper_fix branch October 6, 2025 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants