`<div dir="ltr"><div><div>I've seen something similar to this in Solaris10 (that Oracle won't fix). It was diganosed as basically 'storage is too slow to service requests. Throw more hardware at it.". What happens is that nfs buffers just keep building up and building up (even if it's a read request storm) and the I/O system can't keep up with the request rate and eventually the system goes into panic/desperation swapping and then becomes totally unresponsive.<br><br></div>You could verify if the same thing is happening by watching something like vmstat 3. Once memory starts to get around 3MB free, paging stats will climb (if it's the same issue) until numbers start showing up in 'de', and then you're dead.<br><br></div>Anyway, it's plausible that the same thing would be possible. You could watch out for it and see if you see something similar.<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 28, 2015 at 11:06 AM, Chris Siebenmann <span dir="ltr"><<a href="mailto:cks@cs.toronto.edu" target="_blank">cks@cs.toronto.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> We now have a reproducable situation where high NFS load can cause our<br>
specific fileserver configuration to lock up with what looks like a<br>
memory exhaustion deadlock. So far, attempts to get a crash dump haven't<br>
worked (although they may someday). Without a crash dump, what system<br>
stats and so on should we be looking at that would be useful for people<br>
to identify the kernel bugs involved here, either in the run up to the<br>
lockup or in kmdb after the fact once we break into it after the machine<br>
locks up?<br>
<br>
(Our specific fileserver is NFS to ZFS pools with mirrored vdevs where<br>
each side of the mirror is an iSCSI disk accessed over two backend<br>
iSCSI networks. We suspect that iSCSI is a contributing factor. Our<br>
fileservers have 64 GB of RAM.)<br>
<br>
So far we have vmstat, mpstat, network volume, arcstat, '::memstat'<br>
from mdb -k, and some homegrown NFS and ZFS DTrace activity monitoring<br>
scripts. These say that just before the lockup happens, free memory and<br>
ARC usage collapses abruptly and catastrophically, 'Kernel' memory usage<br>
goes to almost or totally 100%, all CPUs spike to over 90% system time,<br>
we see over a thousand runnable processes[*], and we have over a GB<br>
of in-flight NFS writes but there is very little actual ZFS (and NFS)<br>
IO either in flight or being completed.<br>
<br>
(The NFS service pool also reports a massively increasing and<br>
jaw-dropping number of 'Pending requests'; the last snapshot of<br>
'::svc_pool -v nfs' a few seconds before the crash has 376862 of them.)<br>
<br>
This seems to happen more often with lower values for the number of<br>
NFS server threads, but even very large values are not immune from it<br>
(our most recent lockup happened at 4096 threads). Slowdowns in NFS server<br>
IO responsiveness seem to make this more likely to happen; past slowdowns<br>
have come from both disk IO problems and from full or nearly full pools.<br>
<br>
Thanks in advance.<br>
<br>
- cks<br>
[*: this was with quite a lot of NFS server threads configured.]<br>
_______________________________________________<br>
OmniOS-discuss mailing list<br>
<a href="mailto:OmniOS-discuss@lists.omniti.com">OmniOS-discuss@lists.omniti.com</a><br>
<a href="http://lists.omniti.com/mailman/listinfo/omnios-discuss" target="_blank">http://lists.omniti.com/mailman/listinfo/omnios-discuss</a><br>
</blockquote></div><br></div>
`