Hi, Steve I have fixed this issue in my patch https://patchwork.ozlabs.org/project/linux-mtd/patch/BYAPR08MB4533401FB969CA9A8D254F34DB9C0@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ But it's mainlined in the upstream Linux. Thanks, Bean > > > > > I apologize. And to clarify - I am not calling you (nor Boris, nor the MTD > community) lazy. As a long-time member of this list, I know that's far from the > case. Maybe more in this case Micron deserves to be called lazy now that I > understand the history. Though that I know is an oversimplification too. In any > case, perhaps _I_ was lazy with my phrasing and by not looking up the history > here. > > Again, I apologize. > > > > We put this in and the resulting discussions for embedded systems > > > designers for the next decade are going to be one of two things: > > > * Oh, you want to use that SLC NAND from Micron? Well then don't use > > > Linux because it performs crappy on Micron SLC NANDs. > > > OR > > > * Oh, you want to use Linux? Well, don't use a Micron SLC NAND then > > > because they perform crappy on Linux. > > > > > > Let's get a list of all chip that have this bug (and let's be clear > > > - it's a bug, not a "quirk") and enable it for those chips specifically. > > > Even better if there was something in the chipinfo itself that made > > > it obvious which ones had the problem (because realistically it's > > > probably specific to a particular geometry). In any case, it's in > > > the best interest of Micron to identify to us exactly which chips > > > have or are likely to have this issue and for us to be specific on > > > which get assigned this quirk. It is probably listed in an errata > > > app-note, and if not it should be. > > > > > > Strong NAK to defaulting all Micron SLC NANDs to this - unless it > > > truly is the case that _all_ Micron SLC NANDs in the past and in the > > > future likely have this problem. > > > > From your description then, there's enough denial in Micron within Micron that > my statement does apply - that at least all future Micron parts will have this > problem. Simple logic -> if engineering won't admit there is a problem, they're > not going to get funding to fix the problem. And it's not just going to go away in > the next part, because we all know that new part designs usually start by > borrowing the old part design and since you can't admit there's an issue it's likely > the problem will come along in the next part. > > > I am open to alternatives. > > > > This may sound extreme, but if the point here is to force the manufacturer to > give us the information that is required to support their devices, I'd even suggest > we pull the support and either drop the driver entirely, move it to staging, or > some other extremely obvious move that says, "we are unable to properly > support this without the manufacturers help and the manufacturer doesn't care > about it's customers." Personally, when I upgrade my kernel, I want the kernel to > SHOUT to me that there's a problem with this driver rather than have a > performance issue that I might spend the next six months trying to figure out > why. > > When I start a new project, one of the first things I do is check to see if the parts > that we want to use are supported by Linux. I'd like it when I check if a Micron > SLC NAND part is supported that it is clear there's a big issue with that part. It > showing up in staging instead in the main tree would be a clear signal. > > A message to Micron and other chip vendors: Do not attempt to hide your bugs, > we will find out and hiding this stuff simply pisses us off. Bugs happen, we get it, > expect it, and can work around or fix them. Responsible companies do not > dismiss their users and will quickly and actively investigate reported problems > and then disclose via errata. This used to be common, even as little as 10 or 20 > years ago - there was rarely a chip that I'd use that didn't have a few errata > documents associated with it. Now, good luck getting them (even if you can get > a datasheet). > > We in the embedded Linux community want to work with the vendors to get > good solid upstream support. And vendors, seriously, why the hell are you > resisting it? You've got a large number of people not on your payroll that are > invested in spending time in making you succeed because it makes things better > for them too. And note the use of the word "upstream" - I no longer use vendor > drivers. They're generally of horribly low quality and either make me stuck on a > particular 8 year old kernel or require me to rewrite them for current versions > anyway. > > Tomorrow I'm calling my CMs and will start the process to remove Micron as an > approved vendor and will start qualifying alternatives. > While AFAIK (and I intend to find out for sure), we don't have a problem with the > parts we've been using, I don't want to work with a company that is technically > dishonest like Micron. > > To Miquel - I appreciate your work in finding and working around the issue. And > I appreciate the pragmatic approach to fixing it. But perhaps it's time to say > enough is enough. > > I withdraw my NAK (for what it's worth), but can we find something to very > clearly mark "you may be using a broken device, but we don't know because > Micro won't tell us and so we've conservitavely setup a workaround for all > devices that affects performance"? > > I'll suggest several alternative things, from most forceful to least: > 1. Drop the driver. > 2. Move the driver to staging. > 3. Make it a kconfig option that is on by default, with strong wording along the > way of "if you know you're using a device without this problem, you can turn this > off". > 4. Shove a printk of warning level in there so it's clear in the logs for those of use > who look at the logs when we upgrade. > 5. Keep it on by default, and add a white-list of known devices that are OK to not > use it. Add a big comment of why (which is there) and instructions of how to test > if your device has the problem and that if you test and know it's clean how to > send a patch to add to the whitelist. > > At a minimum, I'd like to see a combo of #3 and #4. > > Thanks, > - Steve ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/