On Wed, Nov 09, 2011 at 01:51:23AM +0100, Jean-Yves Migeon wrote: > > 1 # adding an "invalidate flag" to the pool cache, for each CPU.
How about a serial number, instead. Locally in each CPU's pool cache, globally for the entire kernel. pool_cache_invalidate increments the serial number with an atomic operation; before each allocation on any CPU, that CPU checks whether its local serial number matches the global one. If not, invalidate, then retry the operation. Repeat as necessary. Thor
