----- Original Message ----- From: "Alan Cox" <a...@rice.edu>

You didn't really address Peter's initial technical issue.  Peter
correctly observed that cache pages are just another flavor of free
pages.  Whenever the VM system is checking the number of free pages
against any of the thresholds, it always uses the sum of v_cache_count
and v_free_count.  So, to anyone familiar with the VM system, like
Peter, what you've done, which is to derive a threshold from
v_free_target but only compare v_free_count to that threshold, looks
highly suspect.

That said, I can easily believe that your patch works better than the
existing code, because it is closer in spirit to my interpretation of
what the Solaris code does.  Specifically, I believe that the Solaris
code starts trimming the ARC before the Solaris page daemon starts
writing dirty pages to secondary storage.  Now, you've made FreeBSD do
the same.  However, you've expressed it in a way that looks broken.

To wrap up, I think that you can easily write this in a way that
simultaneously behaves like Solaris and doesn't look wrong to a VM expert.

More details in my last reply on this but in short it seems this has
already been tried and it didn't work.

I'd be interested in what domain experts think about why that is?

In the mean time I've asked Karl to see if he could retest with
this change to confirm counting cache pages along with free does
indeed still cause a problem.

For those that want to catch up on what has already tested see the
original PR:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=187594

   Regards
Steve
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to