Linux 3.7 compat: delayed_work_timer_fn is now GPL-exported

torvalds/linux@d8e794dfd51c368ed3f686b7f4172830b60ae47b made
delayed_work_timer_fn() a GPL-exported symbol. This has forced
CDDL-licensed out-of-tree modules to adopt workarounds. ZFSOnLinux
created a new interface in the Solaris Porting Layer that provides this
functionality reimplemnted this functionality with the following
commits:

zfsonlinux/spl@d9acd930b52503582425c6398fc8dbc1d7d4a01b
zfsonlinux/zfs@2ae10319624869eef0954cdfcdb6f5e33cba2e09

dtrace4linux currently handles GPL-exported symbols by invoking them
anyway. This prevents dtrace4linux from being redistributable in binary
form. ZFSOnLinux and dtrace4linux share common porting issues, but they
currently implement compatibility code independently of one another. My
hope is that dtrace4linux will adopt the ZFSOnLinux Solaris Porting
Layer, which should resolve this issues. With that said, it is easier to
refactor a module that works than it is to refactor one that does not.
That is why I am tentatively extending the approach currently used to
handle GPL-exported symbols to cover delayed_work_timer_fn().

Signed-off-by: Richard Yao <ryao@gentoo.org>
Linux 3.8 compat: Some probe locations have been removed

sdt_add_locator is being called against some things that no longer
exist. I am adding preprocessor directives to fix that.

Signed-off-by: Richard Yao <ryao@gentoo.org>