aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go
diff options
context:
space:
mode:
authorNicholas S. Husin <nsh@golang.org>2026-01-22 22:48:46 -0500
committerNicholas Husin <nsh@golang.org>2026-01-23 11:09:53 -0800
commitca5ffe0092363f21df2c57b50144ba056f260049 (patch)
treee181aa7d9e80504a0173fc8dfc70241a08713db1 /src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go
parent4af8ad24ee3b55ccb644680d95e2502e5551ea0b (diff)
downloadgo-ca5ffe0092363f21df2c57b50144ba056f260049.tar.xz
all: update vendored dependencies
This CL does the following: 1. Bundles up golang.org/x/net/internal/httpsfv since h2_bundle.go now relies on it. 2. Modifies h2_bundle.go import mapping to account for httpsfv package. 3. Updates all vendored dependencies using golang.org/x/build/cmd/updatestd. For #75500 Change-Id: Ia2f41ad606092fe20b62f946266190502b146977 Reviewed-on: https://go-review.googlesource.com/c/go/+/738621 Reviewed-by: Nicholas Husin <husin@google.com> Reviewed-by: Damien Neil <dneil@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go')
-rw-r--r--src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go b/src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go
index 37884033d3..a45e6beeb4 100644
--- a/src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go
+++ b/src/cmd/vendor/github.com/google/pprof/internal/elfexec/elfexec.go
@@ -316,8 +316,7 @@ func ProgramHeadersForMapping(phdrs []elf.ProgHeader, mapOff, mapSz uint64) []*e
// page size is not 4KB, we must try to guess the page size on the system
// where the profile was collected, possibly using the architecture
// specified in the ELF file header.
- pageSize = 4096
- pageOffsetMask = pageSize - 1
+ pageSize = 4096
)
mapLimit := mapOff + mapSz
var headers []*elf.ProgHeader
@@ -331,12 +330,12 @@ func ProgramHeadersForMapping(phdrs []elf.ProgHeader, mapOff, mapSz uint64) []*e
segLimit := p.Off + p.Memsz
// The segment must overlap the mapping.
if p.Type == elf.PT_LOAD && mapOff < segLimit && p.Off < mapLimit {
- // If the mapping offset is strictly less than the page aligned segment
- // offset, then this mapping comes from a different segment, fixes
- // b/179920361.
+ // If the mapping offset is strictly less than the segment offset aligned
+ // to the segment p_align value then this mapping comes from a different
+ // segment, fixes b/179920361.
alignedSegOffset := uint64(0)
- if p.Off > (p.Vaddr & pageOffsetMask) {
- alignedSegOffset = p.Off - (p.Vaddr & pageOffsetMask)
+ if p.Off > (p.Vaddr & (p.Align - 1)) {
+ alignedSegOffset = p.Off - (p.Vaddr & (p.Align - 1))
}
if mapOff < alignedSegOffset {
continue