This is the mail archive of the mailing list for the eCos project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: timed condition variable patch

Yeah, I may have submitted this before.  I don't remember.  I just ran into
this problem again after getting the 2.0 source and decided to make another
patch since I had to fix it again anyway.

That's great if there is a better way to fix it also.


----- Original Message -----
From: "Jonathan Larmour" <>
To: "Wade Jensen" <>; "Nick Garnett"
Cc: <>
Sent: Wednesday, August 07, 2002 2:45 AM
Subject: Re: timed condition variable patch

> Wade Jensen wrote:
> > Hello,
> >
> > There is a very rare condition in Cyg_Condition_Variable::wait_inner(
> > Cyg_Mutex *mx, cyg_tick_count timeout ) that causes the "Unnecessary
call to
> > unlock_inner()" assertion to fail.
> This looks familiar.
> Nick, I seem to recall I discussed this with you IRL in the Red Hat office
> about this, or something similar - i.e. what happens about timers that
> trigger "now" or in the past, and I think it was also in the context of
> select(). Do you remember what the outcome was? I can't find any kernel
> change resulting certainly, but then I can't remember the problem :-).
> > Here is a patch for this problem.  It is based off of the 2.0 snapshot
> > source.
> I'd probably prefer to include the if conditional in the "    if(
> self->get_wake_reason() == Cyg_Thread::NONE )" test further up. But I can
> change that later, depending on what Nick says.
> Jifl
> --
> --[ "You can complain because roses have thorns, or you ]--
> --[  can rejoice because thorns have roses." -Lincoln   ]-- Opinions==mine

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]