Add checks to see if ftrace subsystem is disabled

If ftrace_bug() is called during a function, ftrace_disabled gets
set in the kernel but some of the functions don't return an error.
This patch checks the ftrace_disabled symbol in several places
and forces the code flow down the proper erorr path. Additionally,
the 'active' flag is added to the kpatch_func struct so
kpatch_unlink_object() isn't called on symbols that haven't been
evaluated yet, resulting in less calls to WARN() when they are
unnecessary.

Finally, in the event of a disabled ftrace subsystem, the reason
why is more apparent.