svn commit: r193878 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Dmitry Morozovsky marck at
Wed Jun 10 07:00:03 UTC 2009

On Tue, 9 Jun 2009, Kip Macy wrote:

KM> > KM>   As far as I can tell systems that have less than 4GB are more often hurt
KM> > KM>   by prefetched than helped.  On i386 systems and systems with less than 4GB,
KM> > KM>   prefetch is now disabled by default. I've added a prefetch enable tunable, to
KM> > KM>   enable prefetching for those systems. The prefetch disable tunable will continue
KM> > KM>   to unconditionally disable prefetching.
KM> > KM>
KM> >
KM> > [snip]
KM> >
KM> > KM> +extern int zfs_prefetch_disable;
KM> > KM> +extern int zfs_prefetch_enable;
KM> >
KM> > [snip]
KM> >
KM> > Before the interface is not settled in stone, don't you think simple bool
KM> > zfs_prefetch tunable (defauled to what looks more reasonable to partucilar
KM> > arch/memsize) is more clean and straightforward?
KM> >
KM> Yes. But the semantics I want don't lend themselves well to a boolean.
KM> I want it to default to off for i386 and amd64 w/ < 4GB and on for
KM> amd64 > 4GB. However, I want it to be possible for users with larger
KM> memory systems to disable it and users with smaller memory systems to
KM> enable it. The only way a simple boolean would work would be if it
KM> were zfs_prefetch_non_default_behavior, which I think is even more
KM> confusing than what I have now.

Hmm, I failed to see how boolean prevent the usage:

if arch==i386 || memsize < 4G

and admin can flip the switch to non-default position.

Or, do you think it's not clean for the user?

D.Marck                                     [DM5020, MCK-RIPE, DM3-RIPN]
[ FreeBSD committer:                                 marck at ]
*** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck at ***

More information about the svn-src-all mailing list