Date: Mon, 20 Jan 2014 09:01:35 +0200 From: Daniel Braniss <danny@cs.huji.ac.il> To: Adrian Chadd <adrian@freebsd.org> Cc: Rick Macklem <rmacklem@uoguelph.ca>, FreeBSD stable <freebsd-stable@freebsd.org> Subject: Re: on 9.2-stable nfs/zfs and 10g hang Message-ID: <C2102616-3239-4425-8475-51B709A57737@cs.huji.ac.il> In-Reply-To: <CAJ-VmomgV=W6O2fMXiaJnLopMBDV-=N6XDF17mSWe2Tok96Jkg@mail.gmail.com> References: <588564685.11730322.1389970076386.JavaMail.root@uoguelph.ca> <2C287272-7B57-4AAD-B22F-6A65D9F8677B@cs.huji.ac.il> <CAJ-VmomgV=W6O2fMXiaJnLopMBDV-=N6XDF17mSWe2Tok96Jkg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 18, 2014, at 6:13 PM, Adrian Chadd <adrian@freebsd.org> wrote:
> Hi!
>
> Please try reducing the size down to 32k but leave TSO enabled.
>
did so, it worked ok, but took longer:
with TSO disabled: 14834.61 real 609.29 user 1996.90 sys
with TSO + 32k: 15714.46 real 639.98 user 1828.07 sys
> It's 9.2, so there may be some bugfixes that haven't been backported
> from 10 or -HEAD. Would you be able to try a -HEAD snapshot here?
>
ENOTIME :-).
> What's the NFS server and hosts? I saw the core.txt.16 that says
> "ix0/ix1" so I can glean the basic chipset family but which NIC in
> particular is it? What would people need to try and reproduce it?
>
The hosts involved are Dell 720/710
the 10G card are Intel
ix0@pci0:5:0:0: class=0x020000 card=0x7a118086 chip=0x10fb8086 rev=0x01 hdr=0x00
vendor = 'Intel Corporation'
device = '82599EB 10-Gigabit SFI/SFP+ Network Connection'
class = network
subclass = ethernet
the server is exporting a big ZFS file system, which is served via 2 raid controllers:
mfi1@pci0:65:0:0: class=0x010400 card=0x1f2d1028 chip=0x005b1000 rev=0x05 hdr=0x00
vendor = 'LSI Logic / Symbios Logic'
device = 'MegaRAID SAS 2208 [Thunderbolt]'
class = mass storage
subclass = RAID
mfi2@pci0:66:0:0: class=0x010400 card=0x1f151028 chip=0x00791000 rev=0x05 hdr=0x00
vendor = 'LSI Logic / Symbios Logic'
device = 'MegaRAID SAS 2108 [Liberator]'
class = mass storage
subclass = RAID
- just had the driver card lying around-
I will try a divergent client, which has a Broadcom Nic later.
Q: is the TSO bug in the NIC/driver or in the kernel or both?
cheers
danny
>
> -a
>
>
> On 18 January 2014 03:24, Daniel Braniss <danny@cs.huji.ac.il> wrote:
>>
>> On Jan 17, 2014, at 4:47 PM, Rick Macklem <rmacklem@uoguelph.ca> wrote:
>>
>>> Daniel Braniss wrote:
>>>> hi all,
>>>>
>>>> All was going ok till I decided to connect this host via a 10g nic
>>>> and very soon it started
>>>> to hang. Running multiple make buildworlds from other hosts connected
>>>> via 10g and
>>>> using both src and obj on the server via tcp/nfs did ok. but running
>>>> find … -exec md5 {} + (the find finds over 6M files)
>>>> from another host (at 10g) will hang it very quickly.
>>>>
>>>> If I wait a while (can’t be more specific) it sometimes recovers -
>>>> but my users are not very
>>>> patient :-)
>>>>
>>> This suggests that an RPC request/reply gets dropped in a way that TCP
>>> doesn't recover. Eventually (after up to about 15min, I think?) the TCP
>>> connection will be shut down and a new TCP connection started, with a
>>> retry of outstanding RPCs.
>>>
>>>> I will soon try the same experiment using the old 1G nic, but in the
>>>> meantime, if someone
>>>> could shed some light would be very helpful
>>>>
>>>> I’m attaching core.txt, but if it doesn’t make it, it’s also
>>>> available at:
>>>> ftp://ftp.cs.huji.ac.il/users/danny/freebsd/core.txt.16
>>>>
>>> You might try disabling TSO on the net interface. There are been issues
>>> with TSO for segments around 64K in the past (or use rsize=32768,wsize=32768
>>> options on the client mount, to avoid RPCs over about 32K in size).
>>>
>> BINGO! disabling tso did it. I’ll try reducing the packet size later.
>> some numbers:
>> there where some 7*10^6 files
>> doing it locally (the find + md5) took about 3hs,
>> via nfs at 1g took 11 hrs.
>> at 10g it took 4 hrs.
>>
>> thanks!
>> danny
>>
>>
>>> Beyond that, capturing a packet trace for the case that hangs easily and
>>> looking at what goes on near the end of it in wireshark might give you
>>> a hint about what is going on.
>>>
>>> rick
>>>
>>>> thanks,
>>>> danny
>>>> _______________________________________________
>>>> freebsd-stable@freebsd.org mailing list
>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
>>>> To unsubscribe, send any mail to
>>>> "freebsd-stable-unsubscribe@freebsd.org"
>>>>
>>
>> _______________________________________________
>> freebsd-stable@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
>> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C2102616-3239-4425-8475-51B709A57737>
