#7317 ENOSPC and OSD epoch barrier handling


Related:
https://github.com/ceph/ceph-qa-suite/pull/225
https://github.com/ceph/ceph-client/pull/7
How does this waiting on osd maps interact with our client timeouts? I think there's a danger here that if we don't get our OSDMap for a while for some reason, we could start booting clients who have sent us what they were supposed to.
If so, that's one of the scenarios that sounds rare but is likely if the cluster starts misbehaving in edge cases, like if the cluster gets full and the monitors are overloaded because suddenly everybody is asking them for maps directly. ;)