Page MenuHomeFreeBSD

arm64 pmap: per-domain pv chunk list
ClosedPublic

Authored by andrew on Aug 23 2022, 11:07 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Jun 23, 2:04 AM
Unknown Object (File)
Apr 26 2024, 6:13 PM
Unknown Object (File)
Mar 21 2024, 7:29 AM
Unknown Object (File)
Dec 22 2023, 11:13 PM
Unknown Object (File)
Sep 22 2023, 1:50 PM
Unknown Object (File)
Aug 24 2023, 11:05 PM
Unknown Object (File)
Jul 24 2023, 11:16 PM
Unknown Object (File)
Feb 17 2023, 4:20 PM
Subscribers

Details

Summary

As with amd64 use a per-domain pv chunk lock to reduce contention as
chunks get created and removed all the time.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 47071
Build 43960: arc lint + arc unit

Event Timeline

sys/arm64/arm64/pmap.c
2611

pv_chunks_mutex is no more, so this comment is stale.

2748

This ignores the thread's NUMA allocation policy. In particular, the thread may have been configured to never allocate pages from a particular domain, but here it may do so. I suspect this function should use one of the domainset iterators like vm_page_alloc_noobj() does.

2759

Extra newline.

5484

Can this simply be free_pv_chunk_batch(free_chunks);?

sys/arm64/arm64/pmap.c
2748

This looks like it's also a problem on amd64

  • Fix a comment
  • Remove an extra newline
  • Remove an unneeded cast
This revision was not accepted when it landed; it landed in state Needs Review.Sep 27 2022, 3:15 PM
This revision was automatically updated to reflect the committed changes.