Messages in this thread | | | Subject | Re: [PATCH 03/11] ftrace: Cleanup regex_lock and ftrace_lock around hash updating | From | Steven Rostedt <> | Date | Thu, 09 May 2013 18:09:04 -0400 |
| |
On Thu, 2013-05-09 at 13:12 -0400, Steven Rostedt wrote: > On Thu, 2013-05-09 at 14:44 +0900, Masami Hiramatsu wrote: > > Cleanup regex_lock and ftrace_lock locking points around > > ftrace_ops hash update code. > > > > The new rule is that regex_lock protects ops->*_hash > > read-update-write code for each ftrace_ops. Usually, > > hash update is done by following sequence. > > > > 1. allocate a new local hash and copy the original hash. > > 2. update the local hash. > > 3. move(actually, copy) back the local hash to ftrace_ops. > > 4. update ftrace entries if needed. > > 5. release the local hash. > > > > This makes regex_lock to protect #1-#4, and ftrace_lock > > to protect #3 and #4. > > Patch looks good, but I don't see how ftrace_lock protects #3. The two > things that I see ftrace_lock protecting is the update to the ftrace > entries, and the adding and removing ftrace_ops to the ftrace_ops_list.
OK, yeah, the move does an implicit entries update. Thus it does need the lock. I'll update the change log to imply that.
-- Steve
| |