On Mon, 2007-05-14 at 20:36 +0200, Jan Kiszka wrote: > Jan Kiszka wrote: > > Jan Kiszka wrote: > >> Hi, > >> > >> just checked on real hardware (found in qemu originally): > >> > >> When Linux uses the pit clocksource AND Xenomai is attached, the system > >> time no longer makes progress. Observed under 2.6.20 with 1.7-03 and > >> newer patches, Xenomai trunk. > >> > >> I guess not many people will be affected by this and I'm lacking time to > >> debug, so I'm just dumping the report and running away... > > > > Somehow I hate open issues... > > > > I recalled some private thread with you, Philippe, about this particular > > line in pid_read(). A look at it again revealed the reason for this bug. > > > > Jan > > > > PS: pending_patches++ ;) > > > > > > --- > > arch/i386/kernel/i8253.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > Index: linux-2.6.20/arch/i386/kernel/i8253.c > > =================================================================== > > --- linux-2.6.20.orig/arch/i386/kernel/i8253.c > > +++ linux-2.6.20/arch/i386/kernel/i8253.c > > @@ -47,7 +47,8 @@ static cycle_t pit_read(void) > > > > #ifdef CONFIG_IPIPE > > if (!__ipipe_pipeline_head_p(ipipe_root_domain)) > > - return 0; /* We don't really own the PIT. */ > > + /* We don't own the PIT, fall back to jiffies. */ > > + return (cycle_t)(jiffies * LATCH); > > I think even more correct would be > > return (cycle_t)(jiffies * LATCH) + (LATCH - 1) - old_count; > > Should avoid the theoretical chance of a clock backward jump when > Xenomai attaches. I leave it up to the maintainer to decide. :) >
Merged this one, thanks. > Jan > -- Philippe. _______________________________________________ Adeos-main mailing list [email protected] https://mail.gna.org/listinfo/adeos-main
