svn commit: r285025 - vendor-sys/illumos/dist/uts/common/fs/zfs
Slawa Olhovchenkov
slw at zxy.spb.ru
Tue Jul 14 11:14:57 UTC 2015
On Tue, Jul 14, 2015 at 01:27:24PM +0300, Andriy Gapon wrote:
> On 12/07/2015 16:52, Slawa Olhovchenkov wrote:
> > On Thu, Jul 02, 2015 at 11:01:28AM +0000, Andriy Gapon wrote:
> >
> >> Author: avg
> >> Date: Thu Jul 2 11:01:27 2015
> >> New Revision: 285025
> >> URL: https://svnweb.freebsd.org/changeset/base/285025
> >>
> >> Log:
> >> 6033 arc_adjust() should search MFU lists for oldest buffer when adjusting MFU size
> >>
> >> illumos/illumos-gate at 31c46cf23cd1cf4d66390a983dc5072d7d299ba2
> >>
> >> https://www.illumos.org/issues/6033
> >> When we're looking for the list containing oldest buffer we never actually look
> >> at the MFU lists even when we try to evict from MFU.
> >> looks like a copy paste error, the fix is here:
> >>
> >> Reviewed by: Saso Kiselkov <saso.kiselkov at nexenta.com>
> >> Reviewed by: Xin Li <delphij at delphij.net>
> >> Reviewed by: Prakash Surya <me at prakashsurya.com>
> >> Approved by: Matthew Ahrens <mahrens at delphix.com>
> >> Author: Alek Pinchuk <alek at nexenta.com>
> >> Obtained from: illumos
> >>
> >> Modified:
> >> vendor-sys/illumos/dist/uts/common/fs/zfs/arc.c
> >>
> >
> > Can you see also at arc_init:4297?
> > I see double init arc_mfu_ghost->arcs_lists[i] and no init arc_anon.
> > This is correct?
> >
>
> There is no double initialization if you look harder, one initialization is for
> data and the other is for metadata.
4295: list_create(&arc_mfu_ghost->arcs_lists[i], sizeof (arc_buf_hdr_t), offsetof(arc_buf_hdr_t, b_arc_node));
4297: list_create(&arc_mfu_ghost->arcs_lists[i], sizeof (arc_buf_hdr_t), offsetof(arc_buf_hdr_t, b_arc_node));
I see two absolutly identical initialization
> Buffers in arc_anon state are not placed on a list.
This is correct? Or list initialization of arc_anon is missing?
More information about the svn-src-all
mailing list