Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: Ralf Baechle <ralf@linux-mips.org>
To: Maxime Bizon <mbizon@freebox.fr>
Cc: linux-mips@linux-mips.org
Subject: Re: Time slowing down while doing IDE PIO transfer
Date: Sat, 21 Jan 2006 11:20:49 +0000	[thread overview]
Message-ID: <20060121112048.GA3456@linux-mips.org> (raw)
In-Reply-To: <1137777997.16631.147.camel@sakura.staff.proxad.net>

On Fri, Jan 20, 2006 at 06:26:37PM +0100, Maxime Bizon wrote:

> I have a R4Kec board with an IDE controller, and run linux-mips 2.6.14
> on it. When running a transfer on a cdrom drive, with dma disabled and
> at lowest pio mode, time is slowing down (about 10 times too slow).
> 
> HZ is 1000, I'm using generic mips timer code (arch/mips/kernel/time.c),
> HPT and timer interrupts are R4K.
> 
> This is I guess related to the interrupts being disabled during pio
> transfer (I can't use unmaskirq btw).

This by itself sounds like a bug.

> Looking at timer_interrupt() code, I see that do_timer() will be only
> called once, whether we have lost timer interrupts or not, I guess this
> is the reason of this time problem. Is it a wanted behaviour ?

"Yes" - because properly designed systems shouldn't loose interrupts.
Your problem isn't new but so for everybody was able to solve it by
unmasking interrupts.

> If this is the case, I guess my only hope is running with lower HZ or
> using an RTC ?

Dependig on your processor's clock a lower HZ may indeed be a good idea
just to keep the interrupt overhead down.  You should test yourself what
the optimal balance between latency and overhead it.

If lowering HZ doesn't solve the clock problem you may want to add a
loop to call the timer interrupt repeatedly.

  Ralf

      parent reply	other threads:[~2006-01-23 12:24 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-20 17:26 Time slowing down while doing IDE PIO transfer Maxime Bizon
2006-01-20 18:15 ` Alan Cox
2006-01-20 18:32   ` Maxime Bizon
2006-01-21 11:20 ` Ralf Baechle [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060121112048.GA3456@linux-mips.org \
    --to=ralf@linux-mips.org \
    --cc=linux-mips@linux-mips.org \
    --cc=mbizon@freebox.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox