This repository has been archived on 2026-08-19. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
ROCm-Research-Archive/patches/verify_val.py
T
2026-08-20 00:45:43 +02:00

31 lines
1.1 KiB
Python

import struct
with open('/tmp/amdgpu_installed.ko', 'rb') as f:
data = f.read()
# Check if the old validation values are still present
old_lea = bytes.fromhex('49f7ffff') # -(2231)
new_lea = bytes.fromhex('3bf6ffff') # -(2501)
old_cmp = bytes.fromhex('a6f8ffff') # -(1882)
new_cmp = bytes.fromhex('98f7ffff') # -(2152)
orig_lea = bytes.fromhex('2ff8ffff') # -(2001) original
print("Checking offsets in INSTALLED module:")
for offset in [0x330186, 0x33018D, 0x3301F9, 0x3301FE]:
val = data[offset:offset+4]
print(f" 0x{offset:x}: {val.hex()}", end="")
if val == old_lea: print(" <-- OLD lea (2230)")
elif val == new_lea: print(" <-- NEW lea (2500)")
elif val == old_cmp: print(" <-- OLD cmp (2230)")
elif val == new_cmp: print(" <-- NEW cmp (2500)")
elif val == orig_lea: print(" <-- ORIGINAL lea (2000)")
else: print(" <-- UNKNOWN")
print("\nSearching for old validation pattern (49f7ffff) in module:")
pos = 0
while True:
idx = data.find(old_lea, pos)
if idx == -1: break
ctx = data[max(0,idx-8):idx+12].hex()
print(f" Found at 0x{idx:x}: {ctx}")
pos = idx + 1