From: "Brian J. Fox" <bfox@ua.com>
To: rob@sysgo.de
Cc: dwmw2@infradead.org, linux-mtd@lists.infradead.org,
joern@wohnheim.fh-wedel.de
Subject: Re: MTD concat layer
Date: Mon, 18 Feb 2002 07:46:47 -0800 [thread overview]
Message-ID: <E16cq07-0004Hc-00@speedy.datawave.net> (raw)
In-Reply-To: <Pine.LNX.4.21.0202180915200.5439-100000@dagobert.svc.sysgo.de> (message from Robert Kaiser on Mon, 18 Feb 2002 09:48:51 +0100 (MET))
Date: Mon, 18 Feb 2002 09:48:51 +0100 (MET)
From: Robert Kaiser <rob@sysgo.de>
> In order to achieve predictable behavior, and fewer bugs in the driver
> overall, functions should simply refuse to operate on parameters that
> fall out-of-bounds, and should return an error which specifies why
> nothing happened.
Now, here comes the problem. In the context of an erase function,
what does "predictable behavior" mean ? If it returns EINVAL, the caller
can see that they passed a faulty parameter, so does it make any
difference wether some of the specified flash range have been erased in
the process?
Sure. Erasing the blocks *changes* the state of the world from a
predictable one to an unpredictable one.
By specifying a certain area of flash to be erased, the user has by
definition given up any hope of seeing the data in that area again.
If the arguments are invalid, the code that calculated them is
probably invalid. Erasing the blocks is simply mean, and irreversible.
I think one can compare this to a read() function: if read() returns
an error, would you expect that the buffer that you passed to it
still contains all of its previous data ?
It wouldn't matter if the buffer contained partial data, or no data,
or the previous data. You haven't done something that is user visibly
irreversible!
> Hab' ich meine Gedanken gut eklaren?
>
Ja. Ich meine auch ?
Ja, aber "read" ist nicht "delete"!
MBD,
Brian
== The Difference Between Cultures: ==
Einigkeit und Recht und Freiheit
Liberte', E'galite', Fraternite'
Sex, drugs and rock'n'roll
next prev parent reply other threads:[~2002-02-18 15:35 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-02-12 18:40 MTD concat layer Robert Kaiser
2002-02-13 7:56 ` Suspend Erase bug in cfi_cmdset0001.c Joakim Tjernlund
2002-02-14 8:17 ` Joakim Tjernlund
2002-02-13 11:00 ` MTD concat layer Joakim Tjernlund
2002-02-13 11:04 ` David Woodhouse
2002-02-13 11:34 ` Robert Kaiser
2002-02-13 11:37 ` Robert Schwebel
2002-02-13 13:33 ` Daniel Engström
2002-02-13 14:01 ` Eric W. Biederman
2002-02-15 15:58 ` David Woodhouse
2002-02-15 17:43 ` Robert Kaiser
2002-02-15 18:02 ` David Woodhouse
2002-02-15 18:40 ` Jörn Engel
2002-02-16 10:33 ` Robert Kaiser
2002-02-16 10:43 ` Robert Kaiser
2002-02-16 10:43 ` David Woodhouse
2002-02-16 11:03 ` Robert Kaiser
2002-02-16 11:08 ` David Woodhouse
2002-02-16 14:56 ` Brian J. Fox
2002-02-17 10:36 ` Robert Kaiser
2002-02-17 19:05 ` Brian J. Fox
2002-02-18 8:48 ` Robert Kaiser
2002-02-18 9:05 ` David Woodhouse
2002-02-18 15:53 ` Brian J. Fox
2002-02-18 17:01 ` Robert Kaiser
2002-02-18 17:02 ` David Woodhouse
2002-02-18 15:46 ` Brian J. Fox [this message]
2002-02-20 14:28 ` Jonas Holmberg
2002-02-20 15:35 ` Robert Kaiser
2002-02-21 14:51 ` Jonas Holmberg
2002-02-26 11:32 ` Robert Kaiser
2002-03-06 13:37 ` Jonas Holmberg
2002-03-06 16:02 ` Robert Kaiser
-- strict thread matches above, loose matches on Subject: below --
2002-02-14 11:14 Jonas Holmberg
2002-03-08 16:08 Robert Kaiser
2002-03-08 16:22 ` David Woodhouse
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=E16cq07-0004Hc-00@speedy.datawave.net \
--to=bfox@ua.com \
--cc=dwmw2@infradead.org \
--cc=joern@wohnheim.fh-wedel.de \
--cc=linux-mtd@lists.infradead.org \
--cc=rob@sysgo.de \
/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