On Tue, 2007-02-06 at 19:31 -0800, Nishanth Aravamudan wrote:
> + /*
> + * take a COW fault on each hugepage in the
> + * segment's file data ...
> + */
> + for (p = seg[i].vaddr;
> + p <= seg[i].vaddr + seg[i].filesz;
> + p += hpage_size) {
> + memcpy(&c, p, 1);
> + memcpy(p, &c, 1);
> + }
> + /*
> + * ... as well as each huge page in the
> + * extracopy area
> + *
> + * Note: if minimal_copy is enabled, we do *not*
> + * want to prefault in the remainder of the
> + * segment, as the upper boundary is quite high
> + * (to avoid collisions with small pages)
> + */
Hmm. For the MINIMAL_COPY=no case, don't we want to disable the whole
fadvise algorithm (not just the COWs)? If a particular program is
requiring M_C=no, that means there is initialized data that we don't
know about. As the patch stands, you'll discard everything outside of
filesz, right (ie. the unknown data)? Also, since the M_C=no option is
really a "Safe mode"-like operation and as a result we are wasting
pages, I don't think it makes sense to even attempt the application of
this optimization.
--
Adam Litke - (agl at us.ibm.com)
IBM Linux Technology Center
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Libhugetlbfs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel