Re: Hugetlb demanding paging for -mm tree

From: Andi Kleen <ak_at_suse.de>
Date: 2004-08-06 00:04:55
On Thu, Aug 05, 2004 at 06:42:15AM -0700, Chen, Kenneth W wrote:
> +int hugetlb_acct_memory(long delta)
> +{
> +	atomic_add(delta, &hugetlbzone_resv);
> +	if (delta > 0 && atomic_read(&hugetlbzone_resv) >
> +			VMACCTPG(hugetlb_total_pages())) {
> +		atomic_add(-delta, &hugetlbzone_resv);
> +		return -ENOMEM;
> +	}
> +	return 0;

Wouldn't this be safer with a bit of locking? 
Even if the current code works lockless it would be more safer
for long term mainteance.

> +}
> +
> +struct file_region {
> +	struct list_head link;
> +	int from;
> +	int to;

Shouldn't these be long instead of int? 


> +	/* Check for and consume any regions we now overlap with. */

[...]

I remember writing very similar, but simpler code for NUMA API
regions. The PAT patches also have similar code. 
It's also tricky to get right.

Maybe it would be time to move variable length region list handling
into a nice library in lib/, so that it can be used by other users.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Thu Aug 5 10:11:43 2004

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:29 EST