dynup/kpatch — pull request #390 by jpoimboe (2014-09-02 15:06:42+00:00)
Title: support for calling a new function in another object

If a patch adds a new function in foo.c, and calls that function from
bar.c, currently it fails with something like:

kpatch_create_dynamic_rela_sections: 2115: lookup_global_symbol failed for tpe_allow_file, needed for .text.do_mmap_pgoff

This (crudely) fixes the issue by assuming that if we can't find the
global symbol in the original vmlinux, that it will be provided by
another object in the patch module. If that assumption is incorrect,
the module will fail to load due to the missing symbol dependency.

A (perhaps) better way to fix this is to search for the symbol in the
patched version of the vmlinux. But I think this approach is good
enough, for now at least.

Fixes #388.