[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: how not to write a search algorithm
William Lee Irwin III wrote:
>
> On Sun, Aug 04, 2002 at 03:43:56PM -0700, Andrew Morton wrote:
> > Getting the kernel back to the level of performance and stability
> > which it had before the rmap patch has to be the first step.
> > 1) 50% increase in system load on fork/exec/exit workloads
> > 2) Will oops on pte_chain oom
> > 3) pte_highmem is bust
> > 4) tripled ZONE_NORMAL consumption
> > 5) pte chains go wrong with ntpd
> > The first three or four here are fatal to the retention of the
> > reverse map, IMO. Futzing around fixing them is taking time
> > and is holding up other work.
> > I may have a handle on 1). Still working it.
>
> (2) only needs the reservation bits from the preceding post if it's
> just dealing with kmem_cache_alloc() returning NULL.
Well I think we'll need a per-cpu-pages thing to amortise zone->lock
contention anyway. So what we can do is:
fill_up_the_per_cpu_buffer(GFP_KERNEL); /* disables preemption */
spin_lock(lock);
allocate(GFP_ATOMIC);
spin_unlock(lock);
preempt_enable();
We also prevent interrupt-time allocations from
stealing the final four pages from the per-cpu buffer.
The allocation is guaranteed to succeed, yes? Can use
it for ratnodes as well.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/