[alsa-devel] [PATCH v2] ALSA: core: let low-level driver or userspace disable rewinds

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Mon Jun 12 13:57:29 CEST 2017


On 6/12/17 1:50 AM, Clemens Ladisch wrote:
> Subhransu S. Prusty wrote:
>> Add new hw_params flag to explicitly tell driver that rewinds will never
>> be used. [...]
>
>> +++ b/sound/core/pcm_native.c
>> @@ -2521,6 +2523,9 @@ static snd_pcm_sframes_t snd_pcm_playback_rewind(struct snd_pcm_substream *subst
>>  	if (frames == 0)
>>  		return 0;
>>
>> +	if (runtime->no_rewinds)
>> +		return 0;
>
> Doing a rewind when you've promised not to is an error.  So why doesn't
> this return an error code?

there were earlier patches where we switched from 0 to an error code 
based on Takashi's feedback. I am not that convinced that applications 
actually interpret signed frames as error codes and might interpret 
negative values literally, but I am not going to lay on the tracks on 
this one. If we do move to error codes then we might want to update the 
documentation to make the behavior self-explanatory.


More information about the Alsa-devel mailing list