kpatch/kmod/patch/kpatch.lds
Jessica Yu 0c9a54645c re-enable patch modules with checksum matching
In order to safely re-enable patch modules, add a special
.kpatch.checksum section containing an md5sum of a patch module's
contents. The contents of this section are exported to sysfs via
patch_init and double checked when kpatch load finds that a module of
the same name is already loaded.
2014-09-09 07:52:16 -04:00

34 lines
1.0 KiB
Plaintext

__kpatch_funcs = ADDR(.kpatch.funcs);
__kpatch_funcs_end = ADDR(.kpatch.funcs) + SIZEOF(.kpatch.funcs);
__kpatch_dynrelas = ADDR(.kpatch.dynrelas);
__kpatch_dynrelas_end = ADDR(.kpatch.dynrelas) + SIZEOF(.kpatch.dynrelas);
__kpatch_checksum = ADDR(.kpatch.checksum);
SECTIONS
{
.kpatch.hooks.load : {
__kpatch_hooks_load = . ;
*(.kpatch.hooks.load)
__kpatch_hooks_load_end = . ;
/*
* Pad the end of the section with zeros in case the section is empty.
* This prevents the kernel from discarding the section at module
* load time. __kpatch_hooks_load_end will still point to the end of
* the section before the padding. If the .kpatch.hooks.load section
* is empty, __kpatch_hooks_load equals __kpatch_hooks_load_end.
*/
QUAD(0);
}
.kpatch.hooks.unload : {
__kpatch_hooks_unload = . ;
*(.kpatch.hooks.unload)
__kpatch_hooks_unload_end = . ;
QUAD(0);
}
.kpatch.force : {
__kpatch_force_funcs = . ;
*(.kpatch.force)
__kpatch_force_funcs_end = . ;
QUAD(0);
}
}