Messages in this thread | | | Date | Fri, 26 Jan 2007 20:44:40 +0000 (GMT) | From | Mel Gorman <> | Subject | Re: [PATCH 3/8] Allow huge page allocations to use GFP_HIGH_MOVABLE |
| |
On Fri, 26 Jan 2007, Chris Friesen wrote:
> Mel Gorman wrote: > >> Worse, the problem is to have high order contiguous blocks free at the time >> of allocation without reclaim or migration. If the allocations were not >> atomic, anti-fragmentation as it is today would be enough. > > Has anyone looked at marking the buffers as "needs refilling" then kick off a > kernel thread or something to do the allocations under GFP_KERNEL?
I haven't seen it being discussed although it's probably doable as an addition to the existing mempool mechanism. Anti-fragmentation would mean that the non-atomic GFP_KERNEL allocation had a chance of succeeding.
> That way we avoid having to allocate the buffers with GFP_ATOMIC. >
Unless the load was so high that the pool was getting depleted and memory under so much pressure that reclaim could not keep up. But yes, it's possible that GFP_ATOMIC allocations could be avoided the majority of times.
> I seem to recall that the tulip driver used to do this. Is it just too > complicated from a race condition standpoint? >
It shouldn't be that complicated.
> We currently see this issue on our systems, as we have older e1000 hardware > with 9KB jumbo frames. After a while we just fail to allocate buffers and > the system goes belly-up. >
Can you describe a reliable way of triggering this problem? At best, I hear "on our undescribed workload, we sometimes see this problem" but not much in the way of details.
-- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |