public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: Sven Dietrich <sdietrich@mvista.com>
Cc: dwalker@mvista.com, Andrew Morton <akpm@osdl.org>,
	amakarov@ru.mvista.com, Ingo Molnar <mingo@elte.hu>,
	ext-rt-dev@mvista.com, LKML <linux-kernel@vger.kernel.org>
Subject: RE: [Ext-rt-dev] Re: [ANNOUNCE] Linux 2.6 Real Time Kernel
Date: Tue, 12 Oct 2004 22:37:00 +0200	[thread overview]
Message-ID: <1097613420.19549.105.camel@thomas> (raw)
In-Reply-To: <EOEGJOIIAIGENMKBPIAEIEJEDKAA.sdietrich@mvista.com>

On Tue, 2004-10-12 at 22:31, Sven Dietrich wrote:
> > >
> > > I think patch size is an issue, but I also think that , eventually, we
> > > should change all spin_lock calls that actually lock a mutex to be more
> > > distinct so it's obvious what is going on. Sven and I both agree that
> > > this should be addressed. Is this a non-issue for you? What does the
> > > community want? I don't find your code or ours acceptable in it's
> > > current form , due to this issue.
> > > 
> > > With the addition of PREEMPT_REALTIME it looks like you more than
> > > doubled the size of voluntary preempt. I really feel that it should
> > > remain as two distinct patches. They are dependent , but the scope of
> > > the changes are too vast to lump it all together. 
> > > 
> > 
> > 
> > If there is the tendency to touch the concurrency controls in general
> > all over the kernel, then I would suggest a script driven overhaul of
> > all concurrency controls like spin_locks, mutexes and semaphores to
> > general macros like 
> > 
> > enter_critical_section(TYPE, &var, &flags, whatever);
> > leave_critical_section(TYPE, &var, flags, whatever);
> > 
> > where TYPE might be SPIN_LOCK, SPIN_LOCK_IRQ, MUTEX, PMUTEX or whatever
> > we have and come up with in the future.
> > 
> > This could be done in a first step and then it is clearly identifiable
> > and it gives us more flexibility to wrap different implementations and
> > lets us change particular points in a more clear way.
> > 
> > I would be willing to provide some scripted conversion aid, if there is
> > enough interest to that. I started with some test files and the results
> > are quite encouraging.
> > 

> Ideally we would eventually provide some level of tunability, i.e.
> if you want the spinlocks all the way around it should be possible 
> to have that, or one could enable degrees of enhancements, 
> expanding on the existing sequence starting with PREEMPT, IRQ_THREADS, 
> BKL, MUTEX, etc. In addition to that, once the minim set of spinlocks 
> necessary for RT is established, additional layers, corresponding to
> the lock nesting order, could be established, making the "mutex-depth"
> somewhat configurable based on the performance requirements.
>
> The entire effort would have the side effect of making the locking and 
> critical sections more distinct, and reveal soft spots in concurrency
> code, as well as to raise awareness of the code density inside 
> critical sections.
>
> The concept of tunable foreground / background responsiveness, 
> based on preemptability of low priority processes comes to mind.
> A lot of folks would probably not mind making  UI responsiveness 
> a little crisper, others will want the throughput.

Yup, and having a unique identifiable thing for all that stuff in the
code would make life easier for coders and for people who want to
experiment and change things.

> I realize this is an early stage to be looking at it so high end,
> but I think in general this type of script would not be a bad addition
> to the patch kit(s).

Ok, will try to make it work on more than two files and two patterns.

Any preferences on scripting language ?

tglx



  reply	other threads:[~2004-10-12 20:48 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-09  5:59 [ANNOUNCE] Linux 2.6 Real Time Kernel Sven-Thorsten Dietrich
2004-10-09  6:40 ` Lee Revell
2004-10-09  7:33   ` Daniel Walker
2004-10-09  7:42     ` Lee Revell
2004-10-09 23:40       ` Matthias Urlichs
2004-10-09  8:52     ` Lee Revell
2004-10-09 23:20     ` Dave Hansen
2004-10-09 23:24       ` Lee Revell
2004-10-09 10:51 ` Måns Rullgård
2004-10-09 13:15 ` Måns Rullgård
2004-10-09 21:20   ` Lee Revell
2004-10-09 21:35     ` Måns Rullgård
2004-10-09 21:37       ` Lee Revell
2004-10-09 21:45         ` Måns Rullgård
2004-10-09 21:55       ` Lee Revell
2004-10-09 22:21         ` Måns Rullgård
2004-10-09 23:52       ` Lee Revell
2004-10-10  0:05         ` Måns Rullgård
2004-10-10  0:45           ` Lee Revell
2004-10-10  1:05             ` Måns Rullgård
2004-10-10  1:09               ` Lee Revell
2004-10-10  0:43       ` Micha Feigin
2004-10-10  1:08         ` Måns Rullgård
2004-10-09 17:41 ` Karim Yaghmour
2004-10-09 18:30   ` Lee Revell
2004-10-09 21:26     ` stefan.eletzhofer
2004-10-09 19:30       ` Lee Revell
2004-10-09 19:38         ` Måns Rullgård
2004-10-09 21:38         ` stefan.eletzhofer
2004-10-09 19:47           ` Lee Revell
2004-10-09 20:11             ` Karim Yaghmour
2004-10-09 20:14               ` Lee Revell
2004-10-09 20:53                 ` Karim Yaghmour
2004-10-09 20:59                   ` Lee Revell
2004-10-09 20:20             ` Robert Love
2004-10-09 20:25               ` Lee Revell
2004-10-10  1:15 ` Lee Revell
2004-10-10  8:46 ` Ingo Molnar
2004-10-10 19:41   ` Daniel Walker
2004-10-10 19:46     ` Ingo Molnar
2004-10-10 21:20     ` Andrew Morton
2004-10-10 21:59       ` Ingo Molnar
2004-10-11 17:53         ` Daniel Walker
2004-10-11 20:49           ` Ingo Molnar
2004-10-11 21:44             ` Sven Dietrich
2004-10-11 21:54               ` Ingo Molnar
2004-10-11 23:05                 ` Sven Dietrich
2004-10-12  5:50                   ` Ingo Molnar
2004-10-14  5:09                     ` Dipankar Sarma
2004-10-14  7:18                       ` Ingo Molnar
2004-10-15 14:59                         ` Paul E. McKenney
2004-10-15 15:45                           ` Ingo Molnar
2004-10-15 16:40                             ` Paul E. McKenney
2004-10-15 16:45                               ` Paul E. McKenney
2004-10-17 17:12                       ` Ingo Molnar
2004-10-12 18:50             ` Daniel Walker
2004-10-12 19:46               ` [Ext-rt-dev] " Thomas Gleixner
2004-10-12 20:31                 ` Sven Dietrich
2004-10-12 20:37                   ` Thomas Gleixner [this message]
2004-10-13  0:30                   ` George Anzinger
2004-10-12 21:12                 ` Bill Huey
2004-10-12 21:24                   ` Bill Huey
2004-10-12 21:32                     ` Thomas Gleixner
2004-10-12 23:13                       ` Bill Huey
2004-10-12 21:41                   ` Sven Dietrich
2004-10-12 22:57                     ` Bill Huey
2004-10-12 23:17                       ` Adam Heath
2004-10-12 23:36                         ` Lee Revell
2004-10-12 23:25                       ` Thomas Gleixner
2004-10-13  2:02                       ` K.R. Foley
2004-10-13 13:39                       ` Martijn Sipkema
2004-10-13 13:26                         ` La Monte H.P. Yarroll
2004-10-13 15:04                           ` Martijn Sipkema
2004-10-13 14:55                             ` Kurt Wall
2004-10-13 14:52                               ` Christoph Hellwig
2004-10-13 15:56                         ` Lee Revell
2004-10-13 16:13                           ` Robert Love
2004-10-13 17:14                           ` Martijn Sipkema
2004-10-13  3:55                     ` Bill Huey
2004-10-12 22:00                   ` Thomas Gleixner
2004-10-12 22:36                     ` Bill Huey
2004-10-12 23:10                       ` Thomas Gleixner
2004-10-12 23:33                         ` Bill Huey
2004-10-12 23:37                           ` Thomas Gleixner
2004-10-12 23:52                             ` Bill Huey
2004-10-13  0:59                         ` Valdis.Kletnieks
2004-10-10 12:21 ` John Richard Moser
2004-10-10 17:26   ` Lee Revell
2004-10-10 18:45     ` John Richard Moser
2004-10-10 20:20       ` Ingo Molnar
2004-10-10 20:44         ` John Richard Moser
2004-10-10 17:29   ` Daniel Walker

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=1097613420.19549.105.camel@thomas \
    --to=tglx@linutronix.de \
    --cc=akpm@osdl.org \
    --cc=amakarov@ru.mvista.com \
    --cc=dwalker@mvista.com \
    --cc=ext-rt-dev@mvista.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=sdietrich@mvista.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