lkml.org 
[lkml]   [2005]   [Feb]   [10]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateThu, 10 Feb 2005 11:21:00 +0300
From"Eugeny S. Mints" <>
SubjectRe: Preempt Real-time for ARM
Russell King wrote:
> On Wed, Feb 09, 2005 at 09:41:10AM -0800, Daniel Walker wrote:
> 
>>	All I want to do is integrate the common IRQ threading code. To do that
>>I need things , from Russell, like per descriptor locks .. And I need
>>things , from Ingo, like pulling out the IRQ threading code..
> 
> 
> I've said why per-IRQ locks are incorrect for the non-RT cases on ARM,
> but unfortunately just repeating the reasons why it's wrong isn't
> getting me anywhere either.  So shrug, all I can to is explain why
> it's wrong, and if people choose not to listen there's nothing more
> I can do.

Lets summarize your main arguments from two threads - 
"irq_controller_lock" and this one:
(sorry, I summarized since I somehow accidently lost traack of 
"irq_controller_lock" thread and want to be sure I haven't missed anything)

1) if we drop ide_controller_lock we need to add per-chip lock due to 
read-modify-write issue

true

2) per-descriptor lock will not bring gains since
    a) SMP - almost nonexistent at the moment

As Daniel said - why not look to the future - did anybody expect 3 month 
  ago RT enchancement for Linux?! progress is too quick - and again from 
the perspective of SMP - irq_controller_lock is defective.

    b) lots of contention on request_irq/free_irq - rare
seems true
    c) multiple devices on the same interrupt line - rare
seems true

But in a whole it's not so unambiguously what outweighs - b)&c) against 
contra a)

3) per chip lock in combination with per descriptor lock
   a) decreases peformance

why not to lock per-chip lock only for chips indeed require this (i.e. 
with read/modify/write/) and drop the locking otherwise?!

   b) (quoatition):
      "Yes, and then audit that no one uses different irqchip structures
       covering the same register (consider a read-modify-write mask
       register where some IRQs are edge and others are level riggered.)"

such a register and a chip have ono-to-one relationship, do they? chip 
lock is something connected to _the_ chip. The above situation is 
definitly up to a developer and his own _fault_.

4) ARM IRQs are already "threaded"

As you said:  can we _please_ get the terminology right? As Nicolas 
pointed you were talking about completely different "threaded".


		Eugeny

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:10    [from the cache]
©2003-2008