From: Thomas Gleixner <tglx@linutronix.de>
To: David Woodhouse <dwmw2@infradead.org>, David Updegraff <dave@cray.com>
Cc: linux-mtd@lists.infradead.org
Subject: Re: nand oob layout assumptions
Date: Sat, 27 Mar 2004 18:40:28 +0100 [thread overview]
Message-ID: <200403271840.28091.tglx@linutronix.de> (raw)
In-Reply-To: <1080404311.17352.69.camel@imladris.demon.co.uk>
On Saturday 27 March 2004 17:18, David Woodhouse wrote:
> On Sat, 2004-03-27 at 10:13 -0600, David Updegraff wrote:
> > In all this discussion, the need for anyone outside the driver to know
> > hardware positions of ECC and badblock markers still elludes me. Yes,
> > various FS need to scribble oob info of their own in a particular
> > format, and in a way that won't scribble over ecc/badblock, but is there
> > anything more than that?
>
> Nope. The file system just need to be told which are bad blocks, where
> the ECC data are, and which bytes are still available. In fact, it
> possibly doesn't even need to know where the ECC data are in the general
> case.
>
> > So, again, what if the 'oobsize' and 'oob_buf' (or a renamed relative
> > thereof) were interpreted to mean "region available in OOB for misc.
> > file system housekeeping, that will not stomp on private ECC or badblock
> > areas and will not be interpreted by nand driver". And let the driver
> > put it wherever it wants/needs to in OOB. Driver gets to ignorant of FS
> > details, FS gets to be ignorant of chip-HW-dependent ECC and badblock
> > layout.
>
> Seems reasonable. We can make it a bitmask of available bytes, perhaps?
I'm tired to repeat myself.
1. This will break existing code and I'm not willing to do so
We accepted in a long discussion 2 years ago, that we support fs supplied ECC
layouts. YAFFS relies on this.
2. Putting stuff into any random place is not a thing I want to have.
Changing one line in the placement code will break all existing fs at once.
Changing an oob layout in a fs driver just breaks this and solely this
filesystem.
It may be better and nicer and more clever to have this independent, but
will you explain the people which are using YAFFS on a SmartMedia Card, that
they can either freeze the current code or accept that the already existing
cards are not longer readable ? This is valid for soldered flash too. Update
of existing hardware to a more recent kernel is then not longer possible
without loosing data.
I'm not against an _extended_ API, which provides such things for new
developments, but I'm cowardly refusing to break compability of existing
stuff.
Can you please accept the matter of fact that breaking existing
implementations, which are used on removable medias, is not possible.
Thats like changing the FAT or the ISO driver is not possible even if there
could be better designs available.
Breaking such things only for the sake of a slightly cleaner interface is the
playfield of M$ and friends. Linux has a good standing for long term
stability of interfaces and this is a reason for industrial users to choose
it. They are tired of changing stuff in short intervals, as the lifecycle of
such products are higher than the M$ incompabilty rate. And now we want to go
for the same ?
--
Thomas
________________________________________________________________________
linutronix - competence in embedded & realtime linux
http://www.linutronix.de
mail: tglx@linutronix.de
next prev parent reply other threads:[~2004-03-27 17:43 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-25 18:44 nand oob layout assumptions David Updegraff
2004-03-25 19:58 ` Thomas Gleixner
2004-03-27 7:40 ` Charles Manning
2004-03-27 8:07 ` Thomas Gleixner
2004-03-27 10:24 ` David Woodhouse
2004-03-27 11:10 ` Thomas Gleixner
2004-03-27 11:25 ` David Woodhouse
2004-03-27 14:15 ` Thomas Gleixner
2004-03-27 16:13 ` David Updegraff
2004-03-27 16:18 ` David Woodhouse
2004-03-27 17:40 ` Thomas Gleixner [this message]
2004-03-28 8:06 ` Charles Manning
2004-03-28 8:05 ` Thomas Gleixner
2004-03-28 7:34 ` Charles Manning
2004-03-28 7:51 ` Thomas Gleixner
2004-03-28 8:19 ` Charles Manning
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=200403271840.28091.tglx@linutronix.de \
--to=tglx@linutronix.de \
--cc=dave@cray.com \
--cc=dwmw2@infradead.org \
--cc=linux-mtd@lists.infradead.org \
/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