svn commit: r193878 -
kmacy at freebsd.org
Wed Jun 10 06:24:52 UTC 2009
On Tue, Jun 9, 2009 at 11:15 PM, Dmitry Morozovsky<marck at rinet.ru> wrote:
> On Wed, 10 Jun 2009, Kip Macy wrote:
> KM> Author: kmacy
> KM> Date: Wed Jun 10 01:21:32 2009
> KM> New Revision: 193878
> KM> URL: http://svn.freebsd.org/changeset/base/193878
> KM> Log:
> KM> As far as I can tell systems that have less than 4GB are more often hurt
> KM> by prefetched than helped. On i386 systems and systems with less than 4GB,
> KM> prefetch is now disabled by default. I've added a prefetch enable tunable, to
> KM> enable prefetching for those systems. The prefetch disable tunable will continue
> KM> to unconditionally disable prefetching.
> KM> +extern int zfs_prefetch_disable;
> KM> +extern int zfs_prefetch_enable;
> Before the interface is not settled in stone, don't you think simple bool
> zfs_prefetch tunable (defauled to what looks more reasonable to partucilar
> arch/memsize) is more clean and straightforward?
Yes. But the semantics I want don't lend themselves well to a boolean.
I want it to default to off for i386 and amd64 w/ < 4GB and on for
amd64 > 4GB. However, I want it to be possible for users with larger
memory systems to disable it and users with smaller memory systems to
enable it. The only way a simple boolean would work would be if it
were zfs_prefetch_non_default_behavior, which I think is even more
confusing than what I have now.
More information about the svn-src-all