bcc: Error out when bpf_probe_read_user is not present
bcc: Error out when bpf_probe_read_user is not present

1. For architecture with overlapping address space, error out when
   bpf_probe_read_user is not available.
2. For arch with non overlapping address space, if bpf_probe_read_user
   is not available bpf_probe_read_user is implicitly converted to
   bpf_probe_read.
3. Use bpf_probe_read_kernel instead of bpf_probe_read. When
   bpf_probe_read_kernel is not available, fallback to bpf_probe_read.
   If bpf_probe_read is not available, then bcc would fail anyways.
4. See kernel commit 0ebeea8ca8a4 ("bpf: Restrict bpf_probe_read{,
   str}() only to archs where they work")

Signed-off-by: Sumanth Korikkar <ce55f038c56237666a10109f730271a4db066561@linux.ibm.com>
Acked-by: Ilya Leoshkevich <425ffc1422dc4f32528bd9fd5af355fdb5c96192@linux.ibm.com>

iovisor/bcc,tuxology/bcc,tuxology/bcc,tuxology/bcc,tuxology/bcc,iovisor/bcc,brendangregg/bcc,iovisor/bcc,brendangregg/bcc,iovisor/bcc,tuxology/bcc,brendangregg/bcc,brendangregg/bcc,brendangregg/bcc,iovisor/bcc