[Xenomai] real-time guarantee issues on xenomai 2.6.2.1

Gilles Chanteperdrix gilles.chanteperdrix at xenomai.org
Mon Aug 11 19:25:48 CEST 2014


On 08/11/2014 06:54 PM, Paul Janzen wrote:
> Gilles Chanteperdrix <gilles.chanteperdrix at xenomai.org> writes:
> 
>> Without this one-liner, does one of the following patches help?
>>
>> diff --git a/ksrc/nucleus/vfile.c b/ksrc/nucleus/vfile.c
>> index c8e0363..ff99536 100644
>> --- a/ksrc/nucleus/vfile.c
>> +++ b/ksrc/nucleus/vfile.c
>> @@ -278,7 +278,8 @@ redo:
>>  		if (ret != VFILE_SEQ_SKIP) {
>>  			data += vfile->datasz;
>>  			it->nrdata++;
>> -		}
>> +		} else
>> +			cpu_relax();
>>  	}
>>
>>  	if (ret < 0) {
>>
>>
>> diff --git a/ksrc/nucleus/vfile.c b/ksrc/nucleus/vfile.c
>> index c8e0363..1702f08 100644
>> --- a/ksrc/nucleus/vfile.c
>> +++ b/ksrc/nucleus/vfile.c
>> @@ -278,7 +278,8 @@ redo:
>>  		if (ret != VFILE_SEQ_SKIP) {
>>  			data += vfile->datasz;
>>  			it->nrdata++;
>> -		}
>> +		} else
>> +			xnarch_memory_barrier();
>>  	}
>>
>>  	if (ret < 0) {
> 
> 
> No.  Neither one of these two patches helps.

What about combining the 2, like:

	} else {
		xnarch_memory_barrier();
		cpu_relax();
	}


-- 
                                                                Gilles.




More information about the Xenomai mailing list