1
0
mirror of https://github.com/golang/go synced 2024-11-18 11:24:41 -07:00

runtime: remove alignment padding in mheap and pageAlloc

All subfields use atomic types to ensure alignment, so there's no more
need for these fields.

Change-Id: Iada4253f352a074073ce603f1f6b07cbd5b7c58a
Reviewed-on: https://go-review.googlesource.com/c/go/+/429220
Run-TryBot: Michael Knyszek <mknyszek@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
This commit is contained in:
Michael Anthony Knyszek 2022-09-07 20:11:00 +00:00 committed by Gopher Robot
parent 1c59199c91
commit e28cc362a8
2 changed files with 0 additions and 8 deletions

View File

@ -65,8 +65,6 @@ type mheap struct {
// could self-deadlock if its stack grows with the lock held.
lock mutex
_ uint32 // 8-byte align pages so its alignment is consistent with tests.
pages pageAlloc // page allocation data structure
sweepgen uint32 // sweep generation, see comment in mspan; written during STW
@ -84,8 +82,6 @@ type mheap struct {
// access (since that may free the backing store).
allspans []*mspan // all spans out there
// _ uint32 // align uint64 fields on 32-bit for atomics
// Proportional sweep
//
// These parameters represent a linear function from gcController.heapLive
@ -191,8 +187,6 @@ type mheap struct {
base, end uintptr
}
_ uint32 // ensure 64-bit alignment of central
// central free lists for small size classes.
// the padding makes sure that the mcentrals are
// spaced CacheLinePadSize bytes apart, so that each mcentral.lock

View File

@ -267,8 +267,6 @@ type pageAlloc struct {
// All access is protected by the mheapLock.
inUse addrRanges
_ uint32 // Align scav so it's easier to reason about alignment within scav.
// scav stores the scavenger state.
scav struct {
// index is an efficient index of chunks that have pages available to