Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Feb 2018 17:06:06 +0000
From:      Andrew Turner <andrew@fubar.geek.nz>
To:        cem@freebsd.org
Cc:        src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r329612 - in head/sys: kern sys
Message-ID:  <DC3B30D2-8D05-411F-8AA7-183EC6864FB4@fubar.geek.nz>
In-Reply-To: <CAG6CVpXWpVUSaXwKni8hQCVAPCsPtpFfvjfYHHXbWgYKji1hig@mail.gmail.com>
References:  <201802200006.w1K067ZL032311@repo.freebsd.org> <F9823809-BB07-4C75-BF77-B6F3833B0687@fubar.geek.nz> <CAG6CVpXWpVUSaXwKni8hQCVAPCsPtpFfvjfYHHXbWgYKji1hig@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Yes, I=E2=80=99m still getting it on r329721.

Andrew

> On 21 Feb 2018, at 17:02, Conrad Meyer <cem@freebsd.org> wrote:
>=20
> Do you have r329672 yet?
>=20
> Best,
> Conrad
>=20
> On Wed, Feb 21, 2018 at 7:11 AM, Andrew Turner <andrew@fubar.geek.nz> =
wrote:
>>=20
>>> On 20 Feb 2018, at 00:06, Jeff Roberson <jeff@FreeBSD.org> wrote:
>>>=20
>>> Author: jeff
>>> Date: Tue Feb 20 00:06:07 2018
>>> New Revision: 329612
>>> URL: https://svnweb.freebsd.org/changeset/base/329612
>>>=20
>>> Log:
>>> Further parallelize the buffer cache.
>>>=20
>>> Provide multiple clean queues partitioned into 'domains'.  Each =
domain manages
>>> its own bufspace and has its own bufspace daemon.  Each domain has a =
set of
>>> subqueues indexed by the current cpuid to reduce lock contention on =
the cleanq.
>>>=20
>>> Refine the sleep/wakeup around the bufspace daemon to use atomics as =
much as
>>> possible.
>>>=20
>>> Add a B_REUSE flag that is used to requeue bufs during the scan to =
approximate
>>> LRU rather than locking the queue on every use of a frequently =
accessed buf.
>>>=20
>>> Implement bufspace_reserve with only atomic_fetchadd to avoid loop =
restarts.
>>>=20
>>> Reviewed by: markj
>>> Tested by:   pho
>>> Sponsored by:        Netflix, Dell/EMC Isilon
>>> Differential Revision:       https://reviews.freebsd.org/D14274
>>=20
>> I=E2=80=99m seeing the following panic on FreeBSD/arm64 after this =
change.
>>=20
>> Andrew
>>=20
>> panic: bq_remove: Remove buffer 0xffff00004082f260 from wrong queue.
>> cpuid =3D 4
>> time =3D 1519088201
>> KDB: stack backtrace:
>> db_trace_self() at db_trace_self_wrapper+0x28
>>         pc =3D 0xffff00000062fee4  lr =3D 0xffff0000000c0450
>>         sp =3D 0xffff000040364480  fp =3D 0xffff000040364690
>>=20
>> db_trace_self_wrapper() at vpanic+0x184
>>         pc =3D 0xffff0000000c0450  lr =3D 0xffff000000354ce8
>>         sp =3D 0xffff0000403646a0  fp =3D 0xffff000040364720
>>=20
>> vpanic() at kassert_panic+0x158
>>         pc =3D 0xffff000000354ce8  lr =3D 0xffff000000354b60
>>         sp =3D 0xffff000040364730  fp =3D 0xffff0000403647f0
>>=20
>> kassert_panic() at bq_remove+0x178
>>         pc =3D 0xffff000000354b60  lr =3D 0xffff0000003f7014
>>         sp =3D 0xffff000040364800  fp =3D 0xffff000040364810
>>=20
>> bq_remove() at buf_recycle+0x100
>>         pc =3D 0xffff0000003f7014  lr =3D 0xffff0000003fca80
>>         sp =3D 0xffff000040364820  fp =3D 0xffff000040364880
>>=20
>> buf_recycle() at bufspace_daemon+0xb4
>>         pc =3D 0xffff0000003fca80  lr =3D 0xffff0000003fd31c
>>         sp =3D 0xffff000040364890  fp =3D 0xffff000040364910
>>=20
>> bufspace_daemon() at fork_exit+0x7c
>>         pc =3D 0xffff0000003fd31c  lr =3D 0xffff000000318388
>>         sp =3D 0xffff000040364920  fp =3D 0xffff000040364950
>>=20
>> fork_exit() at fork_trampoline+0x10
>>         pc =3D 0xffff000000318388  lr =3D 0xffff000000649ec4
>>         sp =3D 0xffff000040364960  fp =3D 0x0000000000000000
>>=20
>> KDB: enter: panic
>=20




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?DC3B30D2-8D05-411F-8AA7-183EC6864FB4>