public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
From: Artem Bityutskiy <dedekind1@gmail.com>
To: Zach Sadecki <zsadecki@itwatchdogs.com>,
	Richard Weinberger <richard@nod.at>
Cc: linux-mtd@lists.infradead.org
Subject: Re: UBI wl_tree_add problems after PEB scrubbed
Date: Mon, 03 Dec 2012 12:48:49 +0200	[thread overview]
Message-ID: <1354531729.30168.189.camel@sauron.fi.intel.com> (raw)
In-Reply-To: <50B8CB36.3010604@itwatchdogs.com>

[-- Attachment #1: Type: text/plain, Size: 1950 bytes --]

On Fri, 2012-11-30 at 09:05 -0600, Zach Sadecki wrote:
> Every time I see UBI scrub a PEB with fixable bit-flips (on my custom 
> Freescale i.MX28 board) the background thread has problems shortly 
> thereafter.  I'm not exactly sure where to start debugging this and I'm 
> hoping someone can help point me in the right direction.  Below are 
> kernel messages showing the problem from 2 different runs (in which both 
> ended up with a hung CPU).  This is using kernel 3.7-rc7.
> 
> Also worth noting is that I had to modify the gpmi-nand driver to 
> actually report max_bitflips back to the MTD layer to even get to this 
> point (before that everything would just run along happily until it hit 
> an uncorrectable ECC error).  I will submit a patch for this once 
> everything seems OK...

Ack, reproducible on nandsim with 

sudo sh -c 'echo 1 > /sys/kernel/debug/ubi/ubi0/tst_emulate_bitflips'

I did not confirm this by bisecting, but it seems it is fastmap that
broke it.

And looking at fastmap changes, I immediately see some thing completely
bogus, not related to this:


/**
 * __wl_get_peb - get a physical eraseblock.
 * @ubi: UBI device description object
 *
 * This function returns a physical eraseblock in case of success and a
 * negative error code in case of failure. Might sleep.
 */
static int __wl_get_peb(struct ubi_device *ubi)

Might sleep? Well, yes, because it calls 

ubi_self_check_all_ff()

But then why is this:

       spin_lock(&ubi->wl_lock);
       peb = __wl_get_peb(ubi);
       spin_unlock(&ubi->wl_lock);

Bogus.

Richard, could you please re-test fastmap with all debugging enabled?
I see at least one bug already.

Namely these ones: chk_gen  chk_io  tst_disable_bgt

Also, it seems UBI is completely broken ATM - it craps out immediately
on the first bit-flip. Let me revert fastmap and check if it is fastmap.

-- 
Best Regards,
Artem Bityutskiy

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  reply	other threads:[~2012-12-03 10:48 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-30 15:05 UBI wl_tree_add problems after PEB scrubbed Zach Sadecki
2012-12-03 10:48 ` Artem Bityutskiy [this message]
2012-12-03 11:01   ` Artem Bityutskiy
2012-12-03 11:19   ` Richard Weinberger
2012-12-03 14:46 ` Artem Bityutskiy
2012-12-03 15:02   ` Richard Weinberger
2012-12-03 15:33     ` Artem Bityutskiy
     [not found]       ` <1354564667-9549-1-git-send-email-richard@nod.at>
2012-12-03 19:57         ` [PATCH 1/2] ubi: Remove PEB from free tree in get_peb_for_wl() Richard Weinberger
2012-12-04  8:34           ` Artem Bityutskiy
2012-12-04 10:24             ` Richard Weinberger
2012-12-03 19:57         ` [PATCH 2/2] ubi: Dont call ubi_self_check_all_ff() in __wl_get_peb() Richard Weinberger
2012-12-04  7:55           ` Artem Bityutskiy
2012-12-04  7:56           ` Artem Bityutskiy
2012-12-04  8:15             ` Artem Bityutskiy
2012-12-04  9:15               ` Richard Weinberger
2012-12-04 14:45         ` UBI Fastmap fixes for 3.7 Zach Sadecki
2012-12-04 14:48           ` Richard Weinberger
2012-12-04 14:56             ` Zach Sadecki

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=1354531729.30168.189.camel@sauron.fi.intel.com \
    --to=dedekind1@gmail.com \
    --cc=linux-mtd@lists.infradead.org \
    --cc=richard@nod.at \
    --cc=zsadecki@itwatchdogs.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