mirror of
https://github.com/gnif/LookingGlass.git
synced 2026-08-09 08:41:31 +00:00
[client] scheduler: serialize cadence controls
Keep one accepted frame-schedule control in flight until LGMP reports that its serial has been consumed. Retain ambiguous tokens across pointer queue recovery instead of retransmitting RESET or IMMEDIATE messages. Back off acknowledgement polling and definite enqueue failures. Use modular serial comparison so acknowledgement remains correct across rollover.
This commit is contained in:
@@ -1321,7 +1321,8 @@ static LG_TransportStatus lgmp_controlStatus(LG_Transport * this,
|
||||
if (status != LGMP_OK)
|
||||
return status == LGMP_ERR_INVALID_SESSION ? LG_TRANSPORT_DISCONNECTED :
|
||||
LG_TRANSPORT_ERROR;
|
||||
return serial >= token ? LG_TRANSPORT_OK : LG_TRANSPORT_UNAVAILABLE;
|
||||
return (int32_t)(serial - (uint32_t)token) >= 0 ?
|
||||
LG_TRANSPORT_OK : LG_TRANSPORT_UNAVAILABLE;
|
||||
}
|
||||
|
||||
const LG_TransportOps LGT_LGMP =
|
||||
|
||||
Reference in New Issue
Block a user