osdc: Constrain max number of in-flight read requests

The ObjectCacher now keeps track of the number of in-flight
read-request bytes.  If the number of in-flight read-request
bytes surpasses the cache size, the read request will be
delayed until previous read requests finish.  This prevents
the cache usage from ballooning in size during read-heavy ops
such as copy-up from a cloned image parent.

Fixes: #9854
Backport: giant, firefly, dumpling
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
total_bytes_read is the sum over all the bh's we've looped over.. won't this do a + a+b + a+b+c + a+b+c+d thing?

Also, why not put this accounting in bh_read() itself?  How is this different from stat_rx?  I think I'm missing something.