Re: Setting sysctl vfs.zfs.arc_max failed: 22

From: Steven Hartland <killing_at_multiplay.co.uk>
Date: Wed, 6 Jul 2016 09:08:58 +0100
On 06/07/2016 02:25, Allan Jude wrote:
> On 2016-07-05 20:27, Steven Hartland wrote:
>> Ahh right, let me check that.
>>
>> On 06/07/2016 00:51, Nathan Bosley wrote:
>>> I actually have this same problem.
>>> I'll send more details when I get home later.
>>>
>>> I think the problem started for me after r302265.
>>> Before that, I can set vfs.zfs.arc_max and vfs.zfs.arc_min in
>>> loader.conf.
>>> After r302265, setting either vfs.zfs.arc_max or vfs.zfs.arc_min in
>>> loader.conf results in the EINVAL errors in 'dmesg':
>>>
>>> Setting sysctl vfs.zfs.arc_max failed: 22
>>> Setting sysctl vfs.zfs.arc_min failed: 22
>>>
>>> But setting vfs.zfs.arc_meta_limit in loader.conf works fine.
>>>
>>> But I did notice that using 'sysct' or sysctl.conf for vfs.zfs.arc_max
>>> and vfs.zfs.arc_min works.
>>> I only have problems with setting them now in loader.conf.
>>>
>>> Like I said, I'll try to send output from my setup later.
>>>
>>> Thanks.
>>>
>>> On Tue, Jul 5, 2016 at 6:10 PM, Steven Hartland
>>> <steven_at_multiplay.co.uk <mailto:steven_at_multiplay.co.uk>> wrote:
>>>
>>>      What is it currently?
>>>
>>>      Just had a quick play here:
>>>      sysctl vfs.zfs.arc_max
>>>      vfs.zfs.arc_max: 32283127808
>>>      sysctl vfs.zfs.arc_max=32283127807
>>>      vfs.zfs.arc_max: 32283127808 -> 32283127807
>>>      sysctl vfs.zfs.arc_max=32283127808
>>>      vfs.zfs.arc_max: 32283127807 -> 32283127808
>>>
>>>      Error 22 = EINVAL so I suspect you're requesting a value which one
>>>      of the following:
>>>      * < arc_abs_min
>>>      * > kmem_size
>>>      * < arc_c_min
>>>      * < zfs_arc_meta_limit
>>>
>>>          Regards
>>>          Steve
>>>
>>>      On 05/07/2016 22:56, Eric van Gyzen wrote:
>>>
>>>          Steven and -current:
>>>
>>>          I just updated to r302350 with a GENERIC kernel config.  I see
>>>          this in
>>>          dmesg:
>>>
>>>               VT(efifb): resolution 1024x768
>>>               Setting sysctl vfs.zfs.arc_max failed: 22
>>>               CPU: Intel(R) Xeon(R) CPU E5-1650 v3 _at_ 3.50GHz
>>>          (3491.98-MHz K8-class
>>>               CPU)
>>>
>>>          The relevant parts of /boot/loader.conf are:
>>>
>>>               zfs_load="YES"
>>>               vfs.zfs.arc_max="6442450944"
>>>
>>>          Let me know what other information you need.
>>>
>>>          Cheers,
>>>
>>>          Eric
>>>
>
> I think the issue might be that the default value of arc_min is higher
> than when the user is trying to set arc_max to. In that case we might
> want sysctl to lower arc_min instead of giving an error?
>
> It would definitely be a POLA violation to have to set arc_min lower to
> be able to have existing lines that set arc_max in loader.conf work
> correctly.
>
I'm actually thinking its because the initial calculation hasn't 
occurred yet.

This is not apparent on 10 because the tunable and the sysctl are 
separate. I'm waiting for my head box to rebuild ATM and will check when 
that's done.

     Regard
     Steve
Received on Wed Jul 06 2016 - 06:08:56 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:06 UTC