Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Jun 2009 00:08:43 -0700
From:      Kip Macy <kmacy@freebsd.org>
To:        Dmitry Morozovsky <marck@rinet.ru>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r193878 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Message-ID:  <3c1674c90906100008i4c632312j32f223b8aca14934@mail.gmail.com>
In-Reply-To: <alpine.BSF.2.00.0906101058140.49870@woozle.rinet.ru>
References:  <200906100121.n5A1LWVO089719@svn.freebsd.org> <alpine.BSF.2.00.0906101013480.49870@woozle.rinet.ru> <3c1674c90906092324n58e16154s6800e61752282e42@mail.gmail.com> <alpine.BSF.2.00.0906101058140.49870@woozle.rinet.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jun 10, 2009 at 12:00 AM, Dmitry Morozovsky<marck@rinet.ru> wrote:
> On Tue, 9 Jun 2009, Kip Macy wrote:
>
> KM> > KM> =A0 As far as I can tell systems that have less than 4GB are mo=
re often hurt
> KM> > KM> =A0 by prefetched than helped. =A0On i386 systems and systems w=
ith less than 4GB,
> KM> > KM> =A0 prefetch is now disabled by default. I've added a prefetch =
enable tunable, to
> KM> > KM> =A0 enable prefetching for those systems. The prefetch disable =
tunable will continue
> KM> > KM> =A0 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 simpl=
e bool
> KM> > zfs_prefetch tunable (defauled to what looks more reasonable to par=
tucilar
> KM> > arch/memsize) is more clean and straightforward?
> KM> >
> 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=3D=3Di386 || memsize < 4G
> =A0 =A0 =A0 =A0zfs_prefetch=3D0
> else
> =A0 =A0 =A0 =A0zfs_prefetch=3D1
>
> and admin can flip the switch to non-default position.
>

Right, what you're advocating is zfs_prefetch_non_default. Which is
simpler, but still rather weird.

I'll ask around.

Cheers,
Kip



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3c1674c90906100008i4c632312j32f223b8aca14934>