]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
mm: percpu-vmap fix RCU list walking
authorNick Piggin <npiggin@suse.de>
Mon, 1 Feb 2010 11:24:18 +0000 (22:24 +1100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 9 Feb 2010 12:50:57 +0000 (04:50 -0800)
commit56d4b77f0492eb137fd950e48a7b2364f380d33d
tree513ae7c1b82b507b82133ff0e06cc85e8fff9e84
parentdce6a09aaf62aff73b8123e9bb8ad2247b355848
mm: percpu-vmap fix RCU list walking

commit de5604231ce4bc8db1bc1dcd27d8540cbedf1518 upstream.

RCU list walking of the per-cpu vmap cache was broken.  It did not use
RCU primitives, and also the union of free_list and rcu_head is
obviously wrong (because free_list is indeed the list we are RCU
walking).

While we are there, remove a couple of unused fields from an earlier
iteration.

These APIs aren't actually used anywhere, because of problems with the
XFS conversion.  Christoph has now verified that the problems are solved
with these patches.  Also it is an exported interface, so I think it
will be good to be merged now (and Christoph wants to get the XFS
changes into their local tree).

Cc: linux-mm@kvack.org
Tested-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
mm/vmalloc.c