kasan-offsets.sh 670 B

1234567891011121314151617181920212223242526
  1. #!/bin/sh
  2. # Print out the KASAN_SHADOW_OFFSETS required to place the KASAN SHADOW
  3. # start address at the top of the linear region
  4. print_kasan_offset () {
  5. printf "%02d\t" $1
  6. printf "0x%08x00000000\n" $(( (0xffffffff & (-1 << ($1 - 1 - 32))) \
  7. - (1 << (64 - 32 - $2)) ))
  8. }
  9. echo KASAN_SHADOW_SCALE_SHIFT = 3
  10. printf "VABITS\tKASAN_SHADOW_OFFSET\n"
  11. print_kasan_offset 48 3
  12. print_kasan_offset 47 3
  13. print_kasan_offset 42 3
  14. print_kasan_offset 39 3
  15. print_kasan_offset 36 3
  16. echo
  17. echo KASAN_SHADOW_SCALE_SHIFT = 4
  18. printf "VABITS\tKASAN_SHADOW_OFFSET\n"
  19. print_kasan_offset 48 4
  20. print_kasan_offset 47 4
  21. print_kasan_offset 42 4
  22. print_kasan_offset 39 4
  23. print_kasan_offset 36 4