Re: [PATCH 1/3] [MTD] Flex-OneNAND support

From: Adrian Hunter
Date: Thu Mar 05 2009 - 08:44:37 EST


Andrew Morton wrote:
+ return mtd->ecc_stats.corrected - stats.corrected ? -EUCLEAN : 0;
+}
I wonder what the heck EUCLEAN was invented for and whether MTD's
extensive use of it is appropriate.
UBI uses it to detect bit-flips so that data can be moved before it
can no longer be read. So it is pretty much essential for flash
memories.

That's not the point.

My point is: for what purpose was EUNCLEAN created by whoever created
it and, given that, is its use by MTD appropriate? Because it does
appear that this gets returned all the way to userspace sometimes.

I have had a look at the use of EUCLEAN and found the following:
1. It does not seem to be defined in POSIX
2. It may have been used by unix variants to indicate an
attempt to mount a file system whose superblock was not marked
as clean.
3. In Linux, it is used almost exclusively by MTD, with
one exception in smbfs, from which it is tempting to conclude that
smbfs (at least) is using it incorrectly. There is one web page
http://www.wlug.org.nz/EUCLEAN where the author suggests ENOMEDIUM
might be a better choice.

Can you point me to where EUCLEAN is returned to userspace? I took
a quick look and couldn't see it.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/