Messages in this thread | | | Subject | Re: Sleeping in RCU list traversal | From | Tetsuo Handa <> | Date | Mon, 8 Oct 2007 01:56:30 +0900 |
| |
Hello.
Jun WANG wrote: > I'm sorry,I think I got your idea, if you do not need ptr in > my_task_that_may_sleep(), why you need to grab a reference to "ptr". If > your my_task_that_may_sleep() needs ptr, and according to the > "memory region pointed by "ptr" never be removed." you say, > it is ok to use "ptr" after rcu_read_ulock(). The basic idea behind RCU > is to split updates into "removal" and "reclamation" phases. If you > memory region pointed by "ptr" will not "reclamation" in sleep, it is ok I need "ptr" in my_task_that_may_sleep(), but regarding my case, memory region pointed by "ptr" will never be kfree()ed.
So, I don't need to grab a reference to "ptr" because memory region pointed by "ptr" will never be kfree()ed. And it is legal to use "ptr" after rcu_read_unlock() because memory region pointed by "ptr" will never be kfree()ed.
Thank you.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |