Steven Rostedt
fed1939c64
ftrace: remove old pointers to mcount
...
When a mcount pointer is recorded into a table, it is used to add or
remove calls to mcount (replacing them with nops). If the code is removed
via removing a module, the pointers still exist. At modifying the code
a check is always made to make sure the code being replaced is the code
expected. In-other-words, the code being replaced is compared to what
it is expected to be before being replaced.
There is a very small chance that the code being replaced just happens
to look like code that calls mcount (very small since the call to mcount
is relative). To remove this chance, this patch adds ftrace_release to
allow module unloading to remove the pointers to mcount within the module.
Another change for init calls is made to not trace calls marked with
__init. The tracing can not be started until after init is done anyway.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-10-14 10:35:12 +02:00
..
irq
Merge branch 'linus' into x86/core
2008-08-14 14:58:01 +02:00
power
ftrace: disable tracing for hibernation
2008-08-28 12:27:39 -07:00
time
[CPUFREQ][5/6] cpufreq: Changes to get_cpu_idle_time_us(), used by ondemand governor
2008-10-09 13:52:44 -04:00
trace
ftrace: remove old pointers to mcount
2008-10-14 10:35:12 +02:00
.gitignore
acct.c
tty: Fix abusers of current->sighand->tty
2008-10-13 09:51:42 -07:00
audit.c
[PATCH] Fix the bug of using AUDIT_STATUS_RATE_LIMIT when set fail, no error output.
2008-08-01 12:15:16 -04:00
audit.h
audit_tree.c
auditfilter.c
Re: [PATCH] the loginuid field should be output in all AUDIT_CONFIG_CHANGE audit messages
2008-08-01 12:15:03 -04:00
auditsc.c
tty: Fix abusers of current->sighand->tty
2008-10-13 09:51:42 -07:00
backtracetest.c
backtrace: replace timer with tasklet + completions
2008-06-27 18:09:16 +02:00
bounds.c
capability.c
security: Fix setting of PF_SUPERPRIV by __capable()
2008-08-14 22:59:43 +10:00
cgroup.c
mm owner: fix race between swapoff and exit
2008-09-29 08:41:47 -07:00
cgroup_debug.c
compat.c
configs.c
cpu.c
Merge branches 'sched/devel', 'sched/cpu-hotplug', 'sched/cpusets' and 'sched/urgent' into sched/core
2008-10-08 11:31:02 +02:00
cpuset.c
cpusets: scan_for_empty_cpusets(), cpuset doesn't seem to be so const
2008-10-03 13:39:50 +02:00
delayacct.c
per-task-delay-accounting: update taskstats for memory reclaim delay
2008-07-25 10:53:47 -07:00
dma-coherent.c
dma-coherent: export dma_[alloc|release]_from_coherent methods
2008-08-22 08:34:53 +02:00
dma.c
exec_domain.c
[PATCH] kill altroot
2008-07-26 20:53:20 -04:00
exit.c
tracing, sched: LTTng instrumentation - scheduler
2008-10-14 10:30:52 +02:00
extable.c
fork.c
tracing, sched: LTTng instrumentation - scheduler
2008-10-14 10:30:52 +02:00
futex.c
futexes: fix fault handling in futex_lock_pi
2008-06-23 13:31:15 +02:00
futex_compat.c
hrtimer.c
hrtimer: prevent migration of per CPU hrtimers
2008-09-29 17:09:14 +02:00
itimer.c
kallsyms.c
kallsyms: fix potential overflow in binary search
2008-07-25 10:53:27 -07:00
Kconfig.hz
sched: fix SCHED_HRTICK dependency
2008-07-28 14:37:38 +02:00
Kconfig.preempt
kexec.c
kexec: fix segmentation fault in kimage_add_entry
2008-09-23 08:09:14 -07:00
kfifo.c
kgdb.c
kgdb: call touch_softlockup_watchdog on resume
2008-10-06 13:50:59 -05:00
kmod.c
call_usermodehelper(): increase reliability
2008-07-25 10:53:28 -07:00
kprobes.c
kprobes: remove redundant config check
2008-07-25 10:53:30 -07:00
ksysfs.c
kthread.c
tracing, sched: LTTng instrumentation - scheduler
2008-10-14 10:30:52 +02:00
latencytop.c
lockdep.c
lockdep: fix invalid list_del_rcu in zap_class
2008-08-27 08:40:36 +02:00
lockdep_internals.h
lockdep: build fix
2008-08-13 12:55:10 +02:00
lockdep_proc.c
lockstat: fix numerical output rounding error
2008-08-26 10:37:46 +02:00
Makefile
tracing: Kernel Tracepoints
2008-10-14 10:28:28 +02:00
marker.c
markers: fix markers read barrier for multiple probes
2008-07-30 09:41:45 -07:00
module.c
ftrace: remove old pointers to mcount
2008-10-14 10:35:12 +02:00
mutex-debug.c
mutex-debug.h
mutex.c
locking: fix mutex @key parameter kernel-doc notation
2008-07-28 18:12:36 +02:00
mutex.h
notifier.c
ftrace: ignore functions that cannot be kprobe-ed
2008-10-14 10:34:22 +02:00
ns_cgroup.c
cgroup_clone: use pid of newly created task for new cgroup
2008-07-25 10:53:37 -07:00
nsproxy.c
removed unused #include <linux/version.h>'s
2008-08-23 12:14:12 -07:00
panic.c
Add a WARN() macro; this is WARN_ON() + printk arguments
2008-07-25 10:53:29 -07:00
params.c
pid.c
pidns: remove now unused find_pid function.
2008-07-25 10:53:45 -07:00
pid_namespace.c
pid_ns: (BUG 11391) change ->child_reaper when init->group_leader exits
2008-09-02 19:21:38 -07:00
pm_qos_params.c
pm_qos_requirement might sleep
2008-09-02 19:21:40 -07:00
posix-cpu-timers.c
posix-timers.c
fix error-path NULL deref in alloc_posix_timer()
2008-10-02 15:53:13 -07:00
printk.c
tty: Move tty_write_message out of kernel/printk
2008-10-13 09:51:41 -07:00
profile.c
build kernel/profile.o only when requested
2008-07-25 10:53:27 -07:00
ptrace.c
security: Fix setting of PF_SUPERPRIV by __capable()
2008-08-14 22:59:43 +10:00
rcuclassic.c
rcu: RCU-based detection of stalled CPUs for Classic RCU, fix
2008-10-03 10:41:00 +02:00
rcupdate.c
rcu: fix synchronize_rcu() so that kernel-doc works
2008-08-21 09:31:44 +02:00
rcupreempt.c
rcu: remove redundant ACCESS_ONCE definition from rcupreempt.c
2008-08-18 09:45:22 +02:00
rcupreempt_trace.c
rcu: trace fix possible mem-leak
2008-08-15 17:54:40 +02:00
rcutorture.c
rcu: make rcutorture even more vicious: invoke RCU readers from irq handlers (timers)
2008-06-26 09:24:33 +02:00
relay.c
relay: fix "full buffer with exactly full last subbuffer" accounting problem
2008-08-05 14:33:46 -07:00
res_counter.c
cgroup files: convert res_counter_write() to be a cgroups write_string() handler
2008-07-25 10:53:36 -07:00
resource.c
IO resources: add reserve_region_with_split()
2008-09-04 21:02:44 +02:00
rtmutex-debug.c
rtmutex-debug.h
rtmutex-tester.c
sysdev: Pass the attribute to the low level sysdev show/store function
2008-07-21 21:55:02 -07:00
rtmutex.c
rtmutex.h
rtmutex_common.h
rwsem.c
sched.c
tracing, sched: LTTng instrumentation - scheduler
2008-10-14 10:30:52 +02:00
sched_clock.c
sched_clock: fix cpu_clock()
2008-08-25 17:39:57 +02:00
sched_cpupri.c
sched_cpupri.h
sched_debug.c
sched: add full schedstats to /proc/sched_debug
2008-06-27 14:31:31 +02:00
sched_fair.c
sched: sync wakeups vs avg_overlap
2008-10-08 12:20:26 +02:00
sched_features.h
sched: turn off WAKEUP_OVERLAP
2008-09-22 16:29:00 +02:00
sched_idletask.c
sched: wakeup preempt when small overlap
2008-09-22 16:28:32 +02:00
sched_rt.c
sched_rt.c: resch needed in rt_rq_enqueue() for the root rt_rq
2008-10-04 14:31:54 +02:00
sched_stats.h
sched: fix accounting in task delay accounting & migration
2008-07-04 12:50:23 +02:00
seccomp.c
semaphore.c
semaphore: __down_common: use signal_pending_state()
2008-08-05 14:33:47 -07:00
signal.c
tracing, sched: LTTng instrumentation - scheduler
2008-10-14 10:30:52 +02:00
smp.c
smp: have smp_call_function_single() detect invalid CPUs
2008-08-25 17:45:48 -07:00
softirq.c
Full conversion to early_initcall() interface, remove old interface
2008-07-26 12:00:04 -07:00
softlockup.c
softlockup: minor cleanup, don't check task->state twice
2008-09-02 10:49:51 -07:00
spinlock.c
lockdep: spin_lock_nest_lock(), checkpatch fixes
2008-08-13 13:56:51 +02:00
srcu.c
stacktrace.c
stacktrace: fix modular build, export print_stack_trace and save_stack_trace
2008-06-30 09:20:55 +02:00
stop_machine.c
stop_machine: remove unused variable
2008-08-12 17:52:55 +10:00
sys.c
tty: Add a kref count
2008-10-13 09:51:40 -07:00
sys_ni.c
signalfd: fix undefined reference to `compat_sys_signalfd4' when !CONFIG_SIGNALFD
2008-07-25 11:35:41 -07:00
sysctl.c
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
2008-09-16 14:11:43 -07:00
sysctl_check.c
sysctl: check for bogus modes
2008-07-25 10:53:45 -07:00
taskstats.c
taskstats: remove initialization of static per-cpu variable
2008-07-25 10:53:47 -07:00
test_kprobes.c
time.c
timeconst.pl
timer.c
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
2008-07-14 16:06:58 -07:00
tracepoint.c
tracepoints: use TABLE_SIZE macro
2008-10-14 10:34:07 +02:00
tsacct.c
task IO accounting: move all IO statistics in struct task_io_accounting
2008-07-27 16:12:28 -07:00
uid16.c
user.c
sched: rt-bandwidth for user grouping interface
2008-08-19 13:10:09 +02:00
user_namespace.c
removed unused #include <linux/version.h>'s
2008-08-23 12:14:12 -07:00
utsname.c
removed unused #include <linux/version.h>'s
2008-08-23 12:14:12 -07:00
utsname_sysctl.c
removed unused #include <linux/version.h>'s
2008-08-23 12:14:12 -07:00
wait.c
workqueue.c
Merge branch 'core/locking' into core/urgent
2008-08-12 00:11:49 +02:00