public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Nick Garnett <nickg@ecoscentric.com>
To: Grant Edwards <grante@visi.com>
Cc: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] Re: DSR Scheduling Problem
Date: Wed, 15 Feb 2006 18:30:00 -0000	[thread overview]
Message-ID: <m37j7wiif7.fsf@xl5.calivar.com> (raw)
In-Reply-To: <20060215155303.AA85C54302@rivatek.dnsalias.net>

Grant Edwards <grante@visi.com> writes:

> In gmane.os.ecos.general, you wrote:
> 
> >> Isn't ECOS about choice?
> 
> Yes.
> 
> > Well, unfortunately choice doesn't come for free.
> 
> And the new feature you want does?
> 
> > More testing, more opportunities for bugs, more confusion,
> > etc. I believe useless choices are evil.
> 
> Adding a new DSR scheduler doesn't come for free either.
> Keeping the old one, however, _is_ free.
> 
> >> Make this configurable option and allow users to try both. :-)
> >
> > Which of the options do you suggest to be the default?
> 
> The existing one, of course.  Always default to existing
> behavior when adding new options.
> 
> > How do you explain users the criteria to choose one algorithm
> > or another?
> 
> You don't.  Just explain the differences between the two
> algorithms.  It's up to the user to determine the criteria on
> which he's making his choice.
> 
> > How will user compare the choices in his tests when most of
> > time the algorithms behave exactly the same?
> 
> That's up to the user.
> 
> > How do you explain why LIFO choice is there in the first place
> > if it has no advantages?
> 
> It's already been explained:  LIFO is fast and dirt-simple.
> 
> > For example, the "array" choice for DSR queue does have an
> > excuse as being interrupts-disable-free, and it has an excuse
> > of not being the default as it has potential problems with
> > missing DSRs. What's an excuse for keeping LIFO choice?
> 
> The most important excuse is not changing things for people who
> have working systems.  I don't care how much you want FIFO DSR
> scheduling -- you don't get to force it down my throat.
> 
> > The only one I see is backward compatibility, but due to the
> > fact that eCos never specified exact order of DSRs it
> > shouldn't matter.
> 
> Lots of things that shouldn't matter do.  Don't arbitrarily
> force changes on everybody just to make a tiny minority happy.
> I'm all for allowing that minority to add another DSR
> scheduling option if they want.  I'm _not_ for allow them to
> force that change on everybody else.


I agree with everything that Grant says here.

Stefan's patch, give or take a bit of tidying and name changing, looks
just fine. Adding and removing DSRs remains deterministic, if not
quite constant-time, and resolves any reservations I might have about
adding FIFO queueing.

It should only go in as a configuration option and the original LIFO
mechanism should be the default. Most systems do not have interrupts
occuring at the sort of rate that would make DSR queueing order make
any difference. So we should default to the very simplest approach and
document the tradeoffs of each mechanism. Subsytems and drivers that
really want FIFO queueing can always have a "requires" statement in
their CDL for this option.


-- 
Nick Garnett                                          eCos Kernel Architect
http://www.ecoscentric.com                     The eCos and RedBoot experts
Besuchen Sie uns vom 14.-16.02.06 auf der Embedded World 2006, Stand 11-222
Visit us at Embedded World 2006, Nürnberg, Germany, 14-16 Feb, Stand 11-222


--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

  reply	other threads:[~2006-02-15 18:30 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-14  0:45 Jay Foster
2006-01-14  2:12 ` Grant Edwards
2006-01-14  3:04   ` Paul D. DeRocco
2006-01-14  3:40     ` Grant Edwards
2006-01-16  8:40       ` Daniel Néri
2006-01-16 10:36         ` Nick Garnett
2006-01-16 11:45           ` [ECOS] Generic 16x5x serial driver use of transmit FIFO (was: DSR Scheduling Problem) Daniel Néri
2006-01-16 12:23             ` Nick Garnett
2006-01-16 15:13         ` [ECOS] Re: DSR Scheduling Problem Grant Edwards
2006-01-17  9:43         ` Andrew Lunn
2006-01-16  8:27   ` Dirk Husemann
2006-01-16 15:11     ` Grant Edwards
2006-02-13 10:41   ` Sergei Organov
2006-02-15  2:06     ` Brett Delmage
2006-02-15  9:57       ` Sergei Organov
2006-02-15 13:23         ` Stefan Sommerfeld
2006-02-15 14:07           ` Sergei Organov
2006-02-15 14:14             ` Stefan Sommerfeld
2006-02-15 15:54           ` Grant Edwards
2006-02-15 15:53         ` Grant Edwards
2006-02-15 18:30           ` Nick Garnett [this message]
2006-02-15 19:30             ` Sergei Organov
2006-02-16 10:00               ` Nick Garnett
2006-02-16 13:09                 ` Sergei Organov
2006-02-15 19:36           ` Sergei Organov
2006-02-15 19:57             ` Grant Edwards
2006-02-16 14:08               ` Sergei Organov
2006-02-15 16:34         ` Brett Delmage
2006-01-14  8:23 ` Andrew Lunn
2006-01-16 10:27 ` Nick Garnett
  -- strict thread matches above, loose matches on Subject: below --
2006-02-13 14:51 Uwe Kindler
2006-02-13 15:26 ` Grant Edwards
2006-01-13 23:01 [ECOS] " Jay Foster
2006-01-13 23:38 ` [ECOS] " Grant Edwards

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=m37j7wiif7.fsf@xl5.calivar.com \
    --to=nickg@ecoscentric.com \
    --cc=ecos-discuss@ecos.sourceware.org \
    --cc=grante@visi.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).