]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] Lazy page table copies in fork()
authorNick Piggin <nickpiggin@yahoo.com.au>
Sun, 28 Aug 2005 06:49:11 +0000 (16:49 +1000)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 30 Aug 2005 00:25:04 +0000 (17:25 -0700)
commitd7b2baaea369e98ad9c2b9eb5356dfdbbbf527ee
tree65a4d1f18a93a9e89d43fe0b8e0b3009675c50f0
parent2d9ebbb00c5014f84aeb1b7d293b1b38e8cf2478
[PATCH] Lazy page table copies in fork()

Defer copying of ptes until fault time when it is possible to reconstruct
the pte from backing store. Idea from Andi Kleen and Nick Piggin.

Thanks to input from Rik van Riel and Linus and to Hugh for correcting
my blundering.

Ray Fucillo <fucillo@intersystems.com> reports:

  "I applied this latest patch to a 2.6.12 kernel and found that it does
   resolve the problem.  Prior to the patch on this machine, I was
   seeing about 23ms spent in fork for ever 100MB of shared memory
   segment.

   After applying the patch, fork is taking about 1ms regardless of the
   shared memory size."

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
mm/memory.c