// only remove readInterestOp if needed
key.interestOps(key.interestOps() & ~readInterestOp);
}
final ChannelPipeline pipeline = pipeline();
final ByteBuf byteBuf = pipeline.inboundByteBuffer();
boolean closed = false;
boolean read = false;
boolean firedChannelReadSuspended = false;
try {
expandReadBuffer(byteBuf);