How to allow thread and interrupt safe writing of incoming USART data on FreeRTOS?
FreeRTOS queues can handle it. There may be some overhead - I don't know how much data are your receiving. Just make sure to use xQueueSendFromISR or other function ending FromISR when doing something to the queue from interrupt context.