ftrace/scripts: Have recordmcount copy the object file
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>
Tue, 15 Dec 2015 21:06:10 +0000 (16:06 -0500)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 22 Jan 2016 21:40:05 +0000 (21:40 +0000)
commitfa41a0adbc216e18afe7a2dd4386f614899a0653
tree30fa0c9f5688b2df023df14a7e68405e3ea68539
parent35da6d62b608fd3beb576d72e48e2bc866d714c9
ftrace/scripts: Have recordmcount copy the object file

commit a50bd43935586420fb75f4558369eb08566fac5e upstream.

Russell King found that he had weird side effects when compiling the kernel
with hard linked ccache. The reason was that recordmcount modified the
kernel in place via mmap, and when a file gets modified twice by
recordmcount, it will complain about it. To fix this issue, Russell wrote a
patch that checked if the file was hard linked more than once and would
unlink it if it was.

Linus Torvalds was not happy with the fact that recordmcount does this in
place modification. Instead of doing the unlink only if the file has two or
more hard links, it does the unlink all the time. In otherwords, it always
does a copy if it changed something. That is, it does the write out if a
change was made.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
scripts/recordmcount.c