public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Martin Dalecki <dalecki@evision-ventures.com>
To: benh@kernel.crashing.org
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
	torvalds@transmeta.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] 2.5.6-pre2 IDE cleanup 16
Date: Wed, 06 Mar 2002 12:07:30 +0100	[thread overview]
Message-ID: <3C85F872.7050306@evision-ventures.com> (raw)
In-Reply-To: <E16iPUx-0004vD-00@the-village.bc.nu> <20020306091552.19301@mailhost.mipsys.com>

benh@kernel.crashing.org wrote:

> I would add to that than rather than killing the taskfile stuff, it
> should instead be generalized and any IDE access be done via a taskfile.
> 
> I don't comment on the actual implementation quality as I didn't look
> into it closely, but the point of passing requests as taskfile's
> down to the lowest level driver allow more consistency between the
> various pieces of the driver, more easily hooking of the low level
> taskfile "apply" code to accomodate MMIO or strangely mapped IDE
> controllers, etc...
> 
> Alan: BTW, Apple's Darwin has a nice ATA layer implementation that
> happens to be completely taskfile based :) Ask Andre what he thinks
> about their ATA & SCSI layer, except from bloat due to their C++
> implementation, their overall design is actually really nice !

I have looked at it and come to the following conclusions:

1. Indeed the code quality found there is *excellent* nothing comparable
    with the messy crude found currently in linux.

    The state machine (the finite automata one i mean) is *sweet*
    and can be even a subject to proper formal validation. This is
    quite contrary to the interrupt handler pointer passing games done
    under linux right now. There are clearly defined command
    categories determined by device state instead of the particular
    transport layer. (reset, synchroneous, asynchronous).
    There is proper separation between the device types using the
    same hardware bus layer but completely different transport
    layers (ATA vers ATAPI - which is SCSI in disguise).

2. It convinced me that the current task-file interface in linux
    is inadequate. So Alan please bear with me if your CF format
    microdrive will have to not wakeup properly for some time...
    The current mess will just have to go before something more
    adequate can go in.

3. Someone had too much time at apple, becouse the C++ found
    there doesn't apparently contain anything that couldn't
    be expressed without any pain in plain C with structs containing
    function pointers ;-).


  reply	other threads:[~2002-03-06 11:09 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-05  7:54 [PATCH] per-cpu areas Rusty Russell
2002-03-05 10:51 ` [PATCH] 2.5.6-pre2 IDE cleanup 16 Martin Dalecki
2002-03-05 11:07   ` Zwane Mwaikambo
2002-03-05 11:28     ` Jens Axboe
2002-03-05 11:54       ` Martin Dalecki
2002-03-05 12:04         ` Jens Axboe
2002-03-05 12:09           ` Martin Dalecki
2002-03-06  0:33         ` Alan Cox
2002-03-06  9:51           ` Martin Dalecki
2002-03-05 11:48     ` Martin Dalecki
2002-03-06  0:34       ` Alan Cox
2002-03-05 12:36     ` Anton Altaparmakov
2002-03-05 12:36       ` Martin Dalecki
2002-03-05 12:35         ` Zwane Mwaikambo
2002-03-06  0:28         ` Alan Cox
2002-03-05 12:47       ` Anton Altaparmakov
2002-03-05 12:52         ` Martin Dalecki
2002-03-06  1:40           ` Alan Cox
2002-03-06  8:56             ` Zwane Mwaikambo
2002-03-06  9:43             ` Martin Dalecki
2002-03-06  0:27       ` Alan Cox
2002-03-06 10:15         ` Martin Dalecki
2002-03-05 11:37   ` Arjan van de Ven
2002-03-05 11:51     ` Martin Dalecki
2002-03-05 21:19     ` Vojtech Pavlik
2002-03-05 21:42       ` Jeff Garzik
2002-03-05 21:46         ` Vojtech Pavlik
2002-03-06  9:19           ` Martin Dalecki
2002-03-06  1:08       ` Alan Cox
2002-03-06  9:45         ` Martin Dalecki
2002-03-06  0:41   ` Alan Cox
2002-03-06  9:15     ` benh
2002-03-06 11:07       ` Martin Dalecki [this message]
2002-03-06 11:12         ` Zwane Mwaikambo
2002-03-06 11:59           ` Martin Dalecki
2002-03-06 12:02         ` Meelis Roos
2002-03-06 12:11           ` Martin Dalecki
2002-03-06 16:01         ` Bill Davidsen
2002-03-06 20:36           ` Linus Torvalds
2002-03-06 17:00         ` benh
2002-03-06  9:49     ` Martin Dalecki
  -- strict thread matches above, loose matches on Subject: below --
2002-03-06 13:46 Ronnie Sahlberg
2002-03-13 15:55 Rick A. Hohensee

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=3C85F872.7050306@evision-ventures.com \
    --to=dalecki@evision-ventures.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=benh@kernel.crashing.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.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