Page MenuHomeFreeBSD

amd64 efirt: register all runtime regions as fictitious
ClosedPublic

Authored by kib on Jul 16 2026, 6:52 AM.
Tags
None
Referenced Files
F167490888: D58274.diff
Sat, Aug 22, 5:51 AM
Unknown Object (File)
Fri, Aug 21, 9:05 PM
Unknown Object (File)
Fri, Aug 21, 9:01 PM
Unknown Object (File)
Mon, Aug 17, 8:59 PM
Unknown Object (File)
Sun, Aug 16, 10:52 PM
Unknown Object (File)
Sun, Aug 16, 2:55 PM
Unknown Object (File)
Sun, Aug 16, 12:24 PM
Unknown Object (File)
Sun, Aug 16, 11:43 AM
Subscribers

Details

Summary
This is needed for VM_PHYS_TO_PAGE() to work, which is needed for
pmap_map_io_transient() to work, which is needed for uiomove_fromphys()
to work.

PR:     296348
Reported and tested: Anton Saietskii <vsasjason@gmail.com>

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib requested review of this revision.Jul 16 2026, 6:52 AM
kib added a reviewer: markj.
markj added inline comments.
sys/amd64/amd64/efirt_machdep.c
258

Should we check for and report an error?

This revision is now accepted and ready to land.Jul 16 2026, 2:03 PM
kib marked an inline comment as done.Jul 16 2026, 2:29 PM
kib added inline comments.
sys/amd64/amd64/efirt_machdep.c
258

I do not see much use for it. We did not registered so far at all. The error could only occur if the range covers vm_page_array[] from 'both sides', which cannot happen on x86 at all.

I just added the (void) cast to the call.

This revision was automatically updated to reflect the committed changes.
kib marked an inline comment as done.