reabuffer.go code seems prone to leaks, race conditions and similar bugs because of its use of Cond (which is generally discouraged) and the lack of "typical" use of contexts.
Although I am not aware of any new specific bug, I believe a refactoring of this part could be beneficial for future readers given the crucial importance of this piece of architecture to the whole Rancher product family.
cc @aruiz14