Thread (14 messages) 14 messages, 5 authors, 2008-12-19

Re: Re[2]: [PATCH][v2] fork_init: fix division by zero

From: Andrew Morton <akpm@linux-foundation.org>
Date: 2008-12-11 22:28:15
Also in: lkml

On Fri, 12 Dec 2008 01:22:32 +0300
Yuri Tikhonov [off-list ref] wrote:
quoted
so how about avoiding the nasty ifdefs and doing
 I'm OK with the approach below, but, leading resulting to the same, 
this involves some overhead to the code where there was no this 
overhead before this patch: e.g. your implementation is finally boils 
down to ~5 times more processor instructions than there were before,
plus operations with stack for the 'm' variable.

 On the other hand, my approach with nasty (I agree) ifdefs doesn't 
lead to overheads to the code which does not need this: i.e. the most 
common situation of small PAGE_SIZEs. Big PAGE_SIZE is the exception, 
so I believe that the more common cases should not suffer because of 
this.
yes, but...
quoted
--- a/kernel/fork.c~fork_init-fix-division-by-zero
+++ a/kernel/fork.c
@@ -69,6 +69,7 @@
 #include <asm/mmu_context.h>
 #include <asm/cacheflush.h>
 #include <asm/tlbflush.h>
+#include <asm/div64.h>
 
 /*
  * Protected counters by write_lock_irq(&tasklist_lock)
@@ -185,10 +186,15 @@ void __init fork_init(unsigned long memp
This is __init code and it gets thrown away after bootup.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help