RE: [PATCH] [0/6] HUGETLB memory commitment

From: Chen, Kenneth W
Date: Wed Mar 31 2004 - 03:54:08 EST


>>>> Andy Whitcroft wrote on Tuesday, March 30, 2004 5:49 PM
>>> fd = open("/mnt/htlb/myhtlbfile", O_CREAT|O_RDWR, 0755);
>>> mmap(..., fd, offset);
>>>
>>> Accounting didn't happen in this case, (grep Huge /proc/meminfo):
>
> O.k. Try this one. Should fix that case. There is some uglyness in
> there which needs review, but my testing says this works.

Under common case, worked perfectly! But there are always corner cases.

I can think of two ugliness:
1. very sparse hugetlb file. I can mmap one hugetlb page, at offset
512 GB. This would account 512GB + 1 hugetlb page as committed_AS.
But I only asked for one page mapping. One can say it's a feature,
but I think it's a bug.

2. There is no error checking (to undo the committed_AS accounting) after
hugetlb_prefault(). hugetlb_prefault doesn't always succeed in allocat-
ing all the pages user asked for due to disk quota limit. It can have
partial allocation which would put the committed_AS in a wedged state.

- Ken


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/