Page MenuHomeFreeBSD

Fix zone and keg alignment as well as boot pages calculations on numa.
ClosedPublic

Authored by jeff on Jan 5 2020, 11:53 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Jul 4, 3:59 PM
Unknown Object (File)
Sat, Jul 4, 12:31 PM
Unknown Object (File)
Thu, Jul 2, 6:20 PM
Unknown Object (File)
Tue, Jun 30, 6:17 PM
Unknown Object (File)
Tue, Jun 30, 4:12 AM
Unknown Object (File)
Mon, Jun 29, 10:54 PM
Unknown Object (File)
Fri, Jun 26, 9:49 AM
Unknown Object (File)
Mon, Jun 22, 12:01 AM
Subscribers

Details

Summary

While making NUMA amd64 w/o MD_SMALL_ALLOC boot I noticed a number of numa bugs but also weaker than required alignment. In practice the alignment of zones was actually dictated by the alignment of the per-cpu cache structure. This just clarifies existing behavior while simplifying code.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 28494
Build 26551: arc lint + arc unit

Event Timeline

jeff added reviewers: rlibby, markj.
jeff set the repository for this revision to rS FreeBSD src repository - subversion.
sys/amd64/include/vmparam.h
79

obviously not committing this.

This revision is now accepted and ready to land.Jan 6 2020, 12:10 AM
markj added inline comments.
sys/vm/uma_int.h
169

Typo: terminology.

I think we used to define CACHE_LINE_SIZE to 128 on amd64 for this reason. I'm not sure when that changed.