<div dir="ltr"><div id="gmail-:16x" class="gmail-ii gmail-gt" style="font-size:0.875rem;direction:ltr;margin:8px 0px 0px;padding:0px"><div id="gmail-:16y" class="gmail-a3s gmail-aiL" style="overflow:hidden;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:small;line-height:1.5"><div dir="ltr"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">HI,</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">I was debugging a problem related to alsasrc element, when I observed these log lines from gstreamer during disposing the alsasrc element</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">0:21:22.652372808 [334m  879[00m  0x127ea80 [37mDEBUG  [00m [00m                alsa gstalsasrc.c:1023:gst_alsasrc_reset:<alsasrc39>[00m drop</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">0:21:22.653105297 [334m  879[00m  0x127ea80 [37mDEBUG  [00m [00m                alsa gstalsasrc.c:1025:gst_alsasrc_reset:<alsasrc39>[00m prepare</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">0:21:22.654631315 [334m  879[00m 0xb193aef0 [33;01mWARN   [00m [00m                alsa gstalsasrc.c:861:<span style="font-weight:bold;background:rgb(255,255,153)">xrun_recovery</span>:<alsasrc39> [00m <span style="font-weight:bold;background:rgb(255,255,153)">xrun</span> recovery -32: Broken pipe</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">0:21:22.698214407 [334m  879[00m  0x127ea80 [37mDEBUG  [00m [00m                alsa gstalsasrc.c:1027:gst_alsasrc_reset:<alsasrc39>[00m reset done</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">0:21:22.711734932 [334m  879[00m 0xb193aef0 [33;01mLOG    [00m [00m                alsa gstalsasrc.c:938:gst_alsasrc_get_timestamp:<alsasrc39>[00m ALSA timestamp : 0:22:26.514216229, delay 0</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">Seems like two threads are accesing the alsa driver object at the same time.</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">Going through the alsarc source code, I can see that gst_alsasrc_read locks  just before reading but releases the lock before calling gst_alsasrc_get_timestamp ( which eventually will call <span style="font-weight:bold;background:rgb(255,255,153)">xrun_recovery</span> ).</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">Shouldn't release the lock be placed just after gst_alsasrc_get_timestamp or is there anything I'm missing here ?</span><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">Best Regards</span><font color="#888888"><br style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px"><span style="color:rgb(0,0,0);font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13.44px">Frederik</span></font></div></div></div></div>