Imagine two people each doing different tasks on a production line:
The first completes and hands on the item on an exact fixed schedule; the second can usually do his part in less time, but occasionally more.
Passing the items direct one to the other, the first guy occasionally drops the item to where the second guys hand should! be to catch it, but he's not ready and the item gets lost.
That's your existing situation, with data at a fixed interval from the serial port, and occasionally a delay while you parse the linear buffer content.
The small ring buffer will acting as a FIFO, a first-in, first-out store, between the two.
It's like putting a small ramp shute between the first guy to the second - the items can stack occasionally until the second guy catches up, so nothing lost when the two different timings do not match up.
The two existing parts, interrupt input and linear buffer processing, still do exactly what they did before, just without any critical timing between them.