+ ctx->msgbuf_reduction_counter = UBUS_MSGBUF_REDUCTION_INTERVAL;
+ } else if (ctx->msgbuf_data_len > UBUS_MSG_CHUNK_SIZE) {
+ if (ctx->msgbuf_reduction_counter > 0) {
+ len = -1;
+ --ctx->msgbuf_reduction_counter;
+ } else
+ len = UBUS_MSG_CHUNK_SIZE;
+ } else
+ len = -1;
+
+ if (len > -1) {