Merge tag 'gcc-plugins-v4.20-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux
Pull gcc stackleak plugin fixes from Kees Cook: - Remove tracing for inserted stack depth marking function (Anders Roxell) - Move gcc-plugin pass location to avoid objtool warnings (Alexander Popov) * tag 'gcc-plugins-v4.20-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux: stackleak: Register the 'stackleak_cleanup' pass before the '*free_cfg' pass stackleak: Mark stackleak_track_stack() as notrace
This commit is contained in:
@@ -104,7 +104,7 @@ asmlinkage void notrace stackleak_erase(void)
|
|||||||
}
|
}
|
||||||
NOKPROBE_SYMBOL(stackleak_erase);
|
NOKPROBE_SYMBOL(stackleak_erase);
|
||||||
|
|
||||||
void __used stackleak_track_stack(void)
|
void __used notrace stackleak_track_stack(void)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* N.B. stackleak_erase() fills the kernel stack with the poison value,
|
* N.B. stackleak_erase() fills the kernel stack with the poison value,
|
||||||
|
|||||||
@@ -363,10 +363,12 @@ __visible int plugin_init(struct plugin_name_args *plugin_info,
|
|||||||
PASS_POS_INSERT_BEFORE);
|
PASS_POS_INSERT_BEFORE);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The stackleak_cleanup pass should be executed after the
|
* The stackleak_cleanup pass should be executed before the "*free_cfg"
|
||||||
* "reload" pass, when the stack frame size is final.
|
* pass. It's the moment when the stack frame size is already final,
|
||||||
|
* function prologues and epilogues are generated, and the
|
||||||
|
* machine-dependent code transformations are not done.
|
||||||
*/
|
*/
|
||||||
PASS_INFO(stackleak_cleanup, "reload", 1, PASS_POS_INSERT_AFTER);
|
PASS_INFO(stackleak_cleanup, "*free_cfg", 1, PASS_POS_INSERT_BEFORE);
|
||||||
|
|
||||||
if (!plugin_default_version_check(version, &gcc_version)) {
|
if (!plugin_default_version_check(version, &gcc_version)) {
|
||||||
error(G_("incompatible gcc/plugin versions"));
|
error(G_("incompatible gcc/plugin versions"));
|
||||||
|
|||||||
Reference in New Issue
Block a user