Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jan 2011 17:27:38 +0100
From:      Ivan Voras <ivoras@freebsd.org>
To:        Kostik Belousov <kostikbel@gmail.com>
Cc:        freebsd-fs@freebsd.org, freebsd-stable@freebsd.org
Subject:   Re: tmpfs is zero bytes (no free space), maybe a zfs bug?
Message-ID:  <AANLkTinPZ8jP5yX2se5LLaBYP1dpbEAhX-u7Wr0NAGz4@mail.gmail.com>
In-Reply-To: <20110119150200.GY2518@deviant.kiev.zoral.com.ua>
References:  <4D36A2CF.1080508@fsn.hu> <20110119084648.GA28278@icarus.home.lan> <4D36B85B.8070201@fsn.hu> <ih6f1d$u16$1@dough.gmane.org> <20110119150200.GY2518@deviant.kiev.zoral.com.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On 19 January 2011 16:02, Kostik Belousov <kostikbel@gmail.com> wrote:

>> http://people.freebsd.org/~ivoras/diffs/tmpfs.h.patch
>>
>> I don't think this is a complete solution but it's a start. If you can,
>> try it and see if it helps.
> This is not a start, and actually a step in the wrong direction.
> Tmpfs is wrong now, but the patch would make the wrongness even bigger.
>
> Issue is that the current tmpfs calculation should not depend on the
> length of the inactive queue or the amount of free pages. This data only
> measures =C2=A0the pressure on the pagedaemon, and has absolutely no rela=
tion
> to the amount of data that can be put into anonymous objects before the
> system comes out of swap.
>
> vm_lowmem handler is invoked in two situations:
> - when KVA cannot satisfy the request for the space allocation;
> - when pagedaemon have to start the scan.
> None of the situations has any direct correlation with the fact that
> tmpfs needs to check, that is "Is there enough swap to keep all my
> future anonymous memory requests ?".
>
> Might be, swap reservation numbers can be useful to the tmpfs reporting.
> Also might be, tmpfs should reserve the swap explicitely on start, instea=
d
> of making attempts to guess how much can be allocated at random moment.

Thank you for your explanation! I'm still not very familiar with VM
and VFS. Could you also read my report at
http://www.mail-archive.com/freebsd-current@freebsd.org/msg126491.html
? I'm curious about the fact that there is lots of 'free' memory here
in the same situation.

Do you think that there is something which can be done as a band-aid
without a major modification to tmpfs?



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