Messages in this thread | | | Date | Mon, 2 Jun 2008 13:56:06 -0400 (EDT) | From | Steven Rostedt <> | Subject | Re: [PATCH 0/3][RFC] ftrace: track dynamic ftrace update failures |
| |
On Sun, 1 Jun 2008, Abhishek Sagar wrote:
> > Hi Steven/Ingo, > > In dynamic ftrace any record which fails gets freed to be recycled. This > happens normally during (although not limited to) tracing of init functions. > In general, failures can happen due to multiple reason, such as external > patching of kernel functions, instrumentation of the mcount calls-sites, > hardware error etc. As an example, in the case of kprobes if a probe is > installed on the mcount call site (before being converted to NOP or after) then > eventually ftrace will detect it and free the corresponding record. Kprobes > however will keep on single-sepping the instruction it installed the probe on. > > These patches prevent freeing of records which have failed (except for init > functions). This prevents re-recording of failed functions and allows tracking > them so that they can be listed using a new debugfs file -> 'failures'. The > main change here is preventing removal of ftrace records from ftace_hash. This > way records can be looked up by their 'ip' at any time. >
Hi Abhishek,
Have you also taken into account adding and removing of modules? This can cause some funny behaviours with ftrace that can be rather dangerous.
-- Steve
| |