Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Aug 2016 10:20:08 -0700
From:      Adrian Chadd <adrian@freebsd.org>
To:        Slawa Olhovchenkov <slw@zxy.spb.ru>
Cc:        Bruce Simpson <bms@fastmail.net>, Ryan Stone <rysto32@gmail.com>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, Ryan Stone <rstone@freebsd.org>,  "src-committers@freebsd.org" <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>
Subject:   Re: svn commit: r304436 - in head: . sys/netinet
Message-ID:  <CAJ-Vmo=txJPgfbz6UANF619i4DXRELfct6HVJ-8nS=tK0geXUA@mail.gmail.com>
In-Reply-To: <20160828133012.GN88122@zxy.spb.ru>
References:  <20160826144926.GE88122@zxy.spb.ru> <3dba1b70-54cc-0bb1-5cc8-8c56cd750bec@fastmail.net> <20160826151324.GF88122@zxy.spb.ru> <CAJ-Vmomg6ejJdZessaUU3DF%2BV%2BsQd=hMZwo_pDYpa4XjoB_ZcA@mail.gmail.com> <20160826213613.GH88122@zxy.spb.ru> <CAJ-VmomRDdg5EUUiAHOyVBzitd8cZ8bPGCrU9btnveWeW-_85g@mail.gmail.com> <20160826220255.GI88122@zxy.spb.ru> <CAJ-VmomFuh07_vBi%2BzdNrPs3%2BDni1AtYh_VNKbnACydbCxr7gw@mail.gmail.com> <20160827004617.GJ88122@zxy.spb.ru> <CAJ-VmokC-8hW6uJaORLFQmb_nHdevHbVbBGVS3xGghs3jOKofg@mail.gmail.com> <20160828133012.GN88122@zxy.spb.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

There are some no brainers here so far(tm):

working from the bottom up:

* yeah, the ixgbe locking is a bit silly. Kip's work with iflib and
converting ixgbe to use that instead of its own locking for managing
things should remove the bottom two locks
* the rtalloc1_fib thing - that's odd, because it shouldn't be
contending there unless there's some temporary redirect that's been
learnt. What's the routing table look like on your machine? I Remember
investigating the rtentry reference counting a while ago and concluded
that .. it's terrible, and one specific corner case was checking for
routes from redirects. I'll look at my notes again and see what I
find.

            kernel`vm_object_madvise+0x39e
              kernel`vm_map_madvise+0x3bb
              kernel`sys_madvise+0x82
              kernel`amd64_syscall+0x40f
              kernel`0xffffffff806c8bbb
         97389657

.. something's doing frequent madvise calls, which may be causing some
hilarity between threads. What's the server? nginx?

Then the rest of the big entries are just a combination of rtentry
locking, tcp timer locking, zfs locking and madvise locking. There's
some sowakeup locking there as well, from the socket producer/consumer
locking.




-adrian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=txJPgfbz6UANF619i4DXRELfct6HVJ-8nS=tK0geXUA>