async fn drain_desc_receiver(
    desc_receiver: &mut UnboundedReceiver<DescriptorChain>,
    sender: &mut UnboundedSender<PcmResponse>
) -> Result<(), Error>