![]() | |||||||||||||
Messages in this thread |
* Ingo Molnar <mingo@elte.hu> wrote: > the 'migrate read count' solution seems more promising, as it would > keep other parts of the RCU code unchanged. [ But it seems to break > the nice 'flip pointers' method you found to force a grace period. If > a 'read section' can migrate from one CPU to another then it can > migrate back as well, at which point it cannot have the 'old' pointer. > Maybe it would still work better than no flip pointers. ] the flip pointer method could be made to work if we had a NR_CPUS array of 'current RCU pointer' values attached to the task - and that array would be cleared if the task exits the read section. But this has memory usage worries with large NR_CPUS. (full clearing of the array can be avoided by using some sort of 'read section generation' counter attached to each pointer) Ingo - 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/ | ||||||||||||
| Last update: 2005-04-06 11:30 [from the cache] ©2003-2008 | |||||||||||||