translator: for --vp 05, print log of dwarf module/filename matches during elfutils search
uprobes-inode.c: add UPROBES_HITCOUNT

Added a new directive 'UPROBES_HITCOUNT' which causes stapiu to keep
track of the number of times stapiu_probe_prehandler() and
stapiu_probe_handler() are called. Upon exiting, stapiu_exit() prints
these numbers.

These are important statistics which allow us to verify that uprobe
filtering is working as it should.
testsuite/systemtap.base: add new testcase uprobes_filtering.exp

This new testcase uses the newly implemented define UPROBES_HITCOUNT
(see previous commit) to verify that uprobes filtering work as it
should.

If prefiltering is supported by the kernel (from 3.9), then it verifies
that UPROBE_HANDLER_REMOVE is obeyed and that the prehandler() is not
called over and over for unwanted processes, allowing the stap script
to run at full speed.

In both cases (whether or not prefiltering is supported), it also
verifies that the probe handlers are called only for the processes of
interest and no other (i.e. it makes sure that the filtering in
stapiu_probe_prehandler() works).
uprobes_filtering.exp: add dependency on inode-uprobes

Added a check for the presence of inode-based uprobes, otherwise this
test is irrelevant. Also changed behaviour to conform to other tests
by declaring as untested when installtest_p() is false, rather than
only returning.

Also removed an outdated comment about ignorestderr.
Avoid uprobes crash on error.

* runtime/linux/uprobes/uprobes.c (uprobe_free_process): Make sure the
  uprobe_proceess' hlist field is initialized before trying to deleted it,
  to avoid a NULL pointer dereference.
* runtime/linux/uprobes2/uprobes.c (uprobe_free_process): Ditto.