Prechádzať zdrojové kódy

Feature #TASK_QT-18250 解决restore指令部分代码bug-2

Tom 9 mesiacov pred
rodič
commit
3277ebed12

+ 2 - 2
ebpftracer/tracer/inject/inject_linux_amd64.go

@@ -942,7 +942,7 @@ func modifyReleaseFuncEnter(pid int, originEnterAddr, debugEnterAddr uintptr) er
 func restoreOriginalInstructions(pid int, addr uintptr, instructions []byte) error {
 	// alignedAddr := addr & ^(uintptr(unsafe.Sizeof(uintptr(0))) - 1)
 	// originalData, err := readData(pid, alignedAddr)
-	originalData, err := readDataBytes(pid, alignedAddr, len(instructions))
+	originalData, err := readDataBytes(pid, addr, len(instructions))
 	if err != nil {
 		return err
 	}
@@ -959,7 +959,7 @@ func restoreOriginalInstructions(pid int, addr uintptr, instructions []byte) err
 	}
 
 	// err = writeData(pid, alignedAddr, originalData)
-	err = writeDataBytes(pid, alignedAddr, originalData)
+	err = writeDataBytes(pid, addr, originalData)
 	if err != nil {
 		return err
 	}