aktsk / apk-medit

memory search and patch tool on debuggable apk without root & ndk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

执行dump 时提示runtime: out of memory: cannot allocate 513668022272-byte block (200802304 in use) fatal error: out of memory

Linxi-brave opened this issue · comments

执行 find string 5yMqw46 显示了有4个内存地址 ;尝试dump 其中一个或多个都报错了
log 如下:

find string 5yMqw46
Search UTF-8 String...
Target Value: 5yMqw46([53 121 77 113 119 52 54])
Found: 4!!
Address: 0x723277ed
Address: 0x7800f73690
Address: 0x780a435080
Address: 0x780af8bec0

dump 0x723277ed 0x780af8bec0
runtime: out of memory: cannot allocate 513668022272-byte block (200802304 in use)
fatal error: out of memory

runtime stack:
runtime.throw(0x137c02, 0xd)
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/panic.go:1116 +0x54
runtime.largeAlloc(0x7798c646d3, 0x110101, 0x115040)
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/malloc.go:1179 +0x1a0
runtime.mallocgc.func1()
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/malloc.go:1071 +0x44
runtime.systemstack(0x21c000)
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/asm_arm64.s:235 +0xa0
runtime.mstart()
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/proc.go:1116

goroutine 1 [running, locked to thread]:
runtime.systemstack_switch()
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/asm_arm64.s:180 +0x8 fp=0x4000071960 sp=0x4000071950 pc=0x6d068
runtime.mallocgc(0x7798c646d3, 0x110820, 0x1, 0x4000192000)
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/malloc.go:1070 +0x778 fp=0x4000071a20 sp=0x4000071960 pc=0x1be68
runtime.makeslice(0x110820, 0x7798c646d3, 0x7798c646d3, 0x0)
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/slice.go:98 +0x74 fp=0x4000071a50 sp=0x4000071a20 pc=0x55a74
github.com/aktsk/apk-medit/cmd.Dump(0x4000018188, 0x5, 0x723277ed, 0x780af8bec0, 0x0, 0x0)
/home/runner/work/apk-medit/apk-medit/cmd/cmd.go:366 +0xf4 fp=0x4000071b50 sp=0x4000071a50 pc=0xec894
main.executor(0x400011f4e0, 0x1d)
/home/runner/work/apk-medit/apk-medit/main.go:110 +0x568 fp=0x4000071cd0 sp=0x4000071b50 pc=0xfd028
github.com/c-bata/go-prompt.(*Prompt).Run(0x4000198000)
/home/runner/go/pkg/mod/github.com/c-bata/go-prompt@v0.2.5/prompt.go:84 +0x6bc fp=0x4000071eb0 sp=0x4000071cd0 pc=0xf6d5c
main.main()
/home/runner/work/apk-medit/apk-medit/main.go:178 +0x27c fp=0x4000071f70 sp=0x4000071eb0 pc=0xfdadc
runtime.main()
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/proc.go:204 +0x20c fp=0x4000071fd0 sp=0x4000071f70 pc=0x417cc
runtime.goexit()
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/asm_arm64.s:1136 +0x4 fp=0x4000071fd0 sp=0x4000071fd0 pc=0x6f374

goroutine 19 [syscall]:
os/signal.signal_recv(0x0)
/opt/hostedtoolcache/go/1.15.6/x64/src/runtime/sigqueue.go:147 +0xc4
os/signal.loop()
/opt/hostedtoolcache/go/1.15.6/x64/src/os/signal/signal_unix.go:23 +0x20
created by os/signal.Notify.func1.1
/opt/hostedtoolcache/go/1.15.6/x64/src/os/signal/signal.go:150 +0x44

513668022222272bytes is 513GB, and it is not realistic to display in the terminal, and apk-medit does not support displaying that large a range of memory.
Please try to display it little by little.

We cannot read Chinese, so it would be great if you could make the issue in English next time.