2

I have noticed a bug with Ubuntu 14.04.4 LTS; if the NFS client loses connection to the NFS server the load on that system will spike to upwards of 30.

The only way I've noticed to bring the load down is to lazily unmount the NFS share: umount -l /path/to/share

The problem is; all the conventional tools to tell me system resource usage are not helpful: top, htop, iotop, perf top, sar, mpstat indicate that there is nothing wrong with the system; no single process or thread is running that could explain why the load is so high.

My assumption is that since NFS is implemented in the kernel in Linux is that these tools simply can't see what's going on; is there a way to better troubleshoot this issue? As the conventional tools seem to not work. Is there a way to monitor the run queue in Linux?

1 Answer 1

2

The load average computed by counting the number of processes that are:

  1. currently running
  2. are ready to run, but waiting to be scheduled (the CPU occupied by some other process)
  3. blocked waiting on I/O (uninterruptable sleep, shown as 'D' in top/ps)

and feeding that through a weighted average (over time, to get the 1, 5, and 15 minutes values).

So your high load average doesn't mean the CPU is overloaded (look at the %Cpu in top, etc. to check that); it probably just means that you have a bunch of processes blocked trying to access the (down) NFS server.

1
  • @jersten not without searching. But you can find it documented in (for example) the uptime(1) manpage.
    – derobert
    Mar 25, 2016 at 16:19

You must log in to answer this question.