|  | #!/bin/sh | 
|  |  | 
|  | # Print out the KASAN_SHADOW_OFFSETS required to place the KASAN SHADOW | 
|  | # start address at the top of the linear region | 
|  |  | 
|  | print_kasan_offset () { | 
|  | printf "%02d\t" $1 | 
|  | printf "0x%08x00000000\n" $(( (0xffffffff & (-1 << ($1 - 1 - 32))) \ | 
|  | - (1 << (64 - 32 - $2)) )) | 
|  | } | 
|  |  | 
|  | echo KASAN_SHADOW_SCALE_SHIFT = 3 | 
|  | printf "VABITS\tKASAN_SHADOW_OFFSET\n" | 
|  | print_kasan_offset 48 3 | 
|  | print_kasan_offset 47 3 | 
|  | print_kasan_offset 42 3 | 
|  | print_kasan_offset 39 3 | 
|  | print_kasan_offset 36 3 | 
|  | echo | 
|  | echo KASAN_SHADOW_SCALE_SHIFT = 4 | 
|  | printf "VABITS\tKASAN_SHADOW_OFFSET\n" | 
|  | print_kasan_offset 48 4 | 
|  | print_kasan_offset 47 4 | 
|  | print_kasan_offset 42 4 | 
|  | print_kasan_offset 39 4 | 
|  | print_kasan_offset 36 4 |