stack protector: use AT_RANDOM

Populate the stack canaries from the kernel supplied
AT_RANDOM value, which doesn't involve any system calls.
This is slightly faster (6 fewer syscalls) and avoids
unnecessarily reading /dev/urandom, which depletes entropy.

Bug: 7959813

Change-Id: If2b43100a2a9929666df3de56b6139fed969e0f1
diff --git a/libc/private/bionic_tls.h b/libc/private/bionic_tls.h
index f661ccf..b33e53e 100644
--- a/libc/private/bionic_tls.h
+++ b/libc/private/bionic_tls.h
@@ -29,6 +29,7 @@
 #define _SYS_TLS_H
 
 #include <sys/cdefs.h>
+#include <stdint.h>
 
 __BEGIN_DECLS
 
@@ -134,7 +135,7 @@
 extern void*  __get_stack_base(int  *p_stack_size);
 
 /* Initialize the TLS. */
-extern void __libc_init_tls(unsigned** elfdata);
+extern void __libc_init_tls(uintptr_t* elfdata);
 
 __END_DECLS