Since we are marking the socket dirty on buffer underflow, is there any reason to distinguish it from connection error?