Description
I'm not sure this is a bug or "as intended", but I thought I'd mention it.
FSDataset.getCapacity() calls DF.getCapacity() twice, when evaluating its capacity. Although there is caching to stop the shell being exec'd twice in a row, there is a risk that the first call doesn't run the shell, and the second does -so the value changes during the method.
If that is not intended, it is better to cache the first value for the whole method