fix prefix matching bug for kernel symbol reading

A bug was found as following:

	# ./ktap -e 'printf("0x%x\n", `sched_clock_`)'
	0xffffffff8106388d

Actually "sched_clock_" symbol is not exist in /proc/kallsyms,
the symbol matched the prefix of "sched_clock_local" wrongly.

	ffffffff8106388d t sched_clock_local
	ffffffff810638ff T sched_clock_init

After this patch:

	# ./ktap -e 'printf("0x%x\n", `sched_clock_`)'
	cannot read kernel symbol "sched_clock_" in /proc/kallsyms

	# ./ktap -e 'printf("0x%x\n", `sched_clock_local`)'
        0xffffffff8106388d

Signed-off-by: Qingping Hou <qingping.hou@gmail.com>
Signed-off-by: Jovi Zhangwei <jovi.zhangwei@gmail.com>
 (Jovi: changelog update; code rewrite)