diff options
| author | Aleksandr Nogikh <nogikh@google.com> | 2025-03-05 16:40:15 +0100 |
|---|---|---|
| committer | Aleksandr Nogikh <nogikh@google.com> | 2025-03-05 16:00:01 +0000 |
| commit | 034534df050681c9e95b14ebd841afaa9db31390 (patch) | |
| tree | ae772b9a970d5681244945ff3bfbd24e433495bf /sys | |
| parent | 3ec8cfc1096d6de1f20b6e91fbea57935019a1f1 (diff) | |
sys/targets: use a different DataOffset value for ARM64
It seems that, on ARM64, in many cases we just can't use many enough bits of
the address space. Let's use the old value for now.
It's also problematic (see #5770), but it's lesser of the two evils.
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/targets/targets.go | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/targets/targets.go b/sys/targets/targets.go index e1c763f42..69b530a94 100644 --- a/sys/targets/targets.go +++ b/sys/targets/targets.go @@ -782,6 +782,13 @@ func initTarget(target *Target, OS, arch string) { func (target *Target) defaultDataOffset() uint64 { if target.PtrSize == 8 { + if target.VMArch == ARM64 { + // On ARM64, in many cases we can't use many enough bits of the address space. + // Let's use the old value for now. It's also problematic (see #5770), but it's + // lesser of the two evils. + return 0x20000000 + } + // An address from ASAN's 64-bit HighMem area. // 0x400000000000 works both for arm64 and amd64. We don't run syzkaller tests on any other platform. // During real fuzzing, we don't build with ASAN, so the address should not matter much as long as |
