Page MenuHomeFreeBSD

plic: handle renumbered harts
AbandonedPublic

Authored by mhorne on Oct 8 2019, 12:52 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Mar 28, 10:23 AM
Unknown Object (File)
Dec 20 2023, 2:14 AM
Unknown Object (File)
Jun 15 2023, 7:20 PM
Unknown Object (File)
Jun 3 2023, 8:04 AM
Unknown Object (File)
May 22 2023, 5:36 AM
Unknown Object (File)
Apr 13 2023, 8:53 PM
Unknown Object (File)
Jan 1 2023, 12:56 PM
Subscribers

Details

Reviewers
markj
br
kp
Summary

RISC-V harts may be renumbered during boot depending on the system's
configuration. For example, on the Hifive Unleashed hart 0 is a monitor
hart that never enters supervisor mode. Record the mapping of cpuid to
hart number, so that we can use the original hart value for cases where
they are not 1-to-1.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 26926
Build 25230: arc lint + arc unit

Event Timeline

hart ID is recorded to pcpup->pc_hart. Could it be used ? i.e. PCPU_GET(hart) or pcpu_find(cpu)->pc_hart

In D21940#479242, @br wrote:

hart ID is recorded to pcpup->pc_hart. Could it be used ? i.e. PCPU_GET(hart) or pcpu_find(cpu)->pc_hart

Thanks, this is what I wanted but I had trouble finding the right function for it. I'll update it later this evening to use this instead.

This is now irrelevant after the rework of D21927.