x86_64: kasan: move shadow to vmalloc area.

Move shadow to vmalloc area. Also map shadow corresponding to shadow
itself with poison page.

Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com>
x86_64: kasan: fix kernel boot with CONFIG_DEBUG_VIRTUAL=y

Use __pa_nodebug instead of __pa before shadow initialized.
__pa with CONFIG_DEBUG_VIRTUAL=y may result in __asan_load
call before shadow area initialized.

Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com>
kasan: add kasan_ prefix to poison_shadow()/unpoison_shadow()

Since unpoison_shadow() used outside mm/kasan/ it's nice
to add kasan_ prefix to indicate subsystem related to this function.

Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com>
kasan: optimize __asan_load*/__asan_store* routines.

Before:
 $ netperf
 MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to localhost (127.0.0.1) port 0 AF_INET
 Recv   Send    Send
 Socket Socket  Message  Elapsed
 Size   Size    Size     Time     Throughput
 bytes  bytes   bytes    secs.    10^6bits/sec

  87380  16384  16384    10.00    7162.98

After:
 $ netperf
 MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to localhost (127.0.0.1) port 0 AF_INET
 Recv   Send    Send
 Socket Socket  Message  Elapsed
 Size   Size    Size     Time     Throughput
 bytes  bytes   bytes    secs.    10^6bits/sec

  87380  16384  16384    10.00    13346.68

Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com>