From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <53E8FC9C.90508@xenomai.org> Date: Mon, 11 Aug 2014 19:25:48 +0200 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <44BE6908-E639-421F-B556-E7B3871402CF@gmail.com> <67B7E374-C4D2-4F83-BA40-B289B15867B9@tuebingen.mpg.de> <53E3B5E3.3090006@xenomai.org> <53E3CD23.5040909@xenomai.org> <53E3D084.2000506@tuebingen.mpg.de> <53E3D2FF.5000407@xenomai.org> <53E3D50D.7060701@tuebingen.mpg.de> <53E3D712.3070801@xenomai.org> <53E47905.5070402@xenomai.org> <53E5081C.8050807@xenomai.org> <53E7964B.6080200@xenomai.org> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai] real-time guarantee issues on xenomai 2.6.2.1 List-Id: Discussions about the Xenomai project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paul Janzen Cc: xenomai@xenomai.org On 08/11/2014 06:54 PM, Paul Janzen wrote: > Gilles Chanteperdrix 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.