diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-28 16:57:51 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-28 16:57:51 -0700 |
commit | 2aafe1a4d451866e3e7b476e2fa0813b69b313c1 (patch) | |
tree | 71d6d128a9a54940d707a9534ff733e2c560d6f3 /arch/sparc/mm/srmmu.c | |
parent | 87c7662bea584d5e495e97a59c20b9abaac4eee8 (diff) | |
parent | a949ae560a511fe4e3adf48fa44fefded93e5c2b (diff) |
Merge tag 'trace-fixes-v3.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
Pull ftrace bugfix from Steven Rostedt:
"Takao Indoh reported that he was able to cause a ftrace bug while
loading a module and enabling function tracing at the same time.
He uncovered a race where the module when loaded will convert the
calls to mcount into nops, and expects the module's text to be RW.
But when function tracing is enabled, it will convert all kernel text
(core and module) from RO to RW to convert the nops to calls to ftrace
to record the function. After the convertion, it will convert all the
text back from RW to RO.
The issue is, it will also convert the module's text that is loading.
If it converts it to RO before ftrace does its conversion, it will
cause ftrace to fail and require a reboot to fix it again.
This patch moves the ftrace module update that converts calls to
mcount into nops to be done when the module state is still
MODULE_STATE_UNFORMED. This will ignore the module when the text is
being converted from RW back to RO"
* tag 'trace-fixes-v3.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
ftrace/module: Hardcode ftrace_module_init() call into load_module()
Diffstat (limited to 'arch/sparc/mm/srmmu.c')
0 files changed, 0 insertions, 0 deletions