/* Put a released IPC message back to the released chain.  */
static void _ipc_msg_free(rt_ipc_msg_t p_msg)
/* Put a released IPC message back to the released chain.  */
static void _ipc_msg_free(rt_ipc_msg_t p_msg)
{
    rt_base_t level;
    level = rt_spin_lock_irqsave(&_msg_list_lock);
    p_msg->msg.sender = (void *)_ipc_msg_free_list;
    _ipc_msg_free_list = p_msg;
    rt_spin_unlock_irqrestore(&_msg_list_lock, level);
}