public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ross Dickson <ross@datscreative.com.au>
To: "Prakash K. Cheemplavam" <PrakashKC@gmx.de>
Cc: linux-kernel@vger.kernel.org, Jamie Lokier <jamie@shareable.org>,
	Ian Kumlien <pomac@vapor.com>,
	Jesse Allen <the3dfxdude@hotmail.com>,
	Craig Bradney <cbradney@zip.com.au>,
	Daniel Drake <dan@reactivated.net>
Subject: Re: [PATCH] 2.6, 2.4, Nforce2, Experimental idle halt workaround instead of apic ack delay.
Date: Sun, 15 Feb 2004 02:13:20 +1000	[thread overview]
Message-ID: <200402150213.20532.ross@datscreative.com.au> (raw)
In-Reply-To: <402E0386.5090004@gmx.de>

> > Found the problem for 2.6
> > 
> > After fixing it the 2.6 temperature is
> > Patched Linux 2.6.3-rc1-mm1, 38C
> > Ambient today is 1C cooler also.
> 
> Yes, I am just trying your new patch, and it works! Furthermore it seems 
> to have less ipact on system performance than the tack one, as now 
> hdparm reports the same figures as without using APIC. Well done!
> 
> Have you read the post  from Mathieu about his finding of APIC and 8254 
> timer not being sync, which causes lock-ups? 

I have seen the posting from Mathieu. It is very interesting work. 
With an embedded system you would not waste the resources to setup and run
two timers at almost the same 1ms interval as is done in i386 linux unless you
had very good reason. I think for the PC it has to do with the 8254 historically
having a more accurate oscillator source?

I am thinking that maybe nforce2 is locking up when the 8254 interrupt and the
apic interrupt trigger almost co-incident with each other for a while - yielding
back to back cycles of coming out of C1 disconnect and then being thrown
back into it by the idle thread. This could cause all sorts of problems within
the chips such as hot tristate drivers or power rail fluctuations if the capacitors
and regulators cannot compensate for such a frequency. An analogy is
the low frequency beat while tuning a musical instrument. Also if the oscillators
are from different crystals then the beat frequency will also vary with temperature.

By changing the timing differential between the apic timer and the 8254 timer
Mathieu forces the interrupts come into phase with each other for a briefer
period of time so then not so many back to back C1 cycles occur? And eliminating
the apic timer removes this source of interrupt co-incidence.

Maybe the Athlon nforce2 system can withstand the C1 disconnect dance of the
two timers but then throwing in the repetitive block read interrupts of an IDE hard
drive triggers failure. Twos company - three's a crowd...??? I am just guessing.


>	Maybe there should be the 
> correct way of fixing it. Furthermore I saw this in latest ACPI update:
> [ACPI] nforce2 timer lockup from Maciej W. Rozycki
> 
> Is this the fix or something else?

Partly, its related to my io-apic edge patch regarding timer ints. Maciej &
I corresponded about the ioapic & 8254 timers in some detail in December.
Jesse spotted Maciej's fix called nforce-irq-setup-fix.patch first appearing
in 2.6.3-rc1-mm1 and is referred to in this thread starter.

It gets another mention in 2.6.3-rc2-mm1 changelog as now being included
in the ACPI patch so I am pretty sure that is it.
"-nforce-irq-setup-fix.patch"
" This is in the ACPI patch"

Regards
Ross.

> 
> Cheers,
> 
> Prakash
 


  reply	other threads:[~2004-02-14 16:12 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-11 15:22 [PATCH] 2.6, 2.4, Nforce2, Experimental idle halt workaround instead of apic ack delay Ross Dickson
2004-02-12 18:17 ` Derek Foreman
2004-02-12 16:11   ` Daniel Drake
2004-02-12 19:30     ` [PATCH] 2.6, 2.4, Nforce2, Experimental idle halt workaroundinstead " Carlos Silva
2004-02-12 19:54     ` [PATCH] 2.6, 2.4, Nforce2, Experimental idle halt workaround instead " Derek Foreman
2004-02-12 21:44   ` Jesse Allen
2004-02-12 21:52     ` Derek Foreman
2004-02-12 22:06       ` Craig Bradney
2004-02-12 23:04         ` Jesse Allen
2004-02-12 23:15           ` Craig Bradney
2004-02-12 23:37             ` Jesse Allen
2004-02-12 23:50               ` Craig Bradney
2004-02-12 23:20           ` Roberto Sanchez
2004-02-13 11:17 ` Prakash K. Cheemplavam
2004-02-13 14:41   ` Ross Dickson
2004-02-13 15:55     ` Nforce2, APIC, CPU Disconnect and setup_boot_APIC_clock() cheuche+lkml
2004-02-14  1:24     ` [PATCH] 2.6, 2.4, Nforce2, Experimental idle halt workaround instead of apic ack delay Ross Dickson
2004-02-14  4:46       ` GCC feature request: warn on "if (function_name)" Jamie Lokier
2004-02-14  4:51         ` Andrew Pinski
2004-02-14 11:16       ` [PATCH] 2.6, 2.4, Nforce2, Experimental idle halt workaround instead of apic ack delay Prakash K. Cheemplavam
2004-02-14 16:13         ` Ross Dickson [this message]
2004-02-14 21:46       ` Ian Kumlien
2004-02-23  1:33       ` Prakash K. Cheemplavam
2004-02-23 19:50         ` Jesse Allen
2004-02-23  1:37       ` Prakash K. Cheemplavam
2004-02-25 12:38         ` Ross Dickson
2004-02-25 19:49           ` Prakash K. Cheemplavam
2004-02-25 21:44           ` Arjen Verweij
2004-02-26  0:13             ` Ross Dickson
2004-02-26  9:59               ` Mikael Pettersson
2004-03-07 14:46               ` Craig Bradney
2004-03-08 22:42           ` Arjen Verweij
2004-03-08 22:59             ` Craig Bradney
2004-03-08 23:11               ` Arjen Verweij
2004-03-14 12:04                 ` Arjen Verweij
2004-03-09 18:38               ` Josh McKinney
2004-03-24 15:59           ` Edd Dumbill

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=200402150213.20532.ross@datscreative.com.au \
    --to=ross@datscreative.com.au \
    --cc=PrakashKC@gmx.de \
    --cc=cbradney@zip.com.au \
    --cc=dan@reactivated.net \
    --cc=jamie@shareable.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pomac@vapor.com \
    --cc=the3dfxdude@hotmail.com \
    /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