mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: lsorense@csclub.uwaterloo.ca (Lennart Sorensen)
To: Tomasz Chmielewski <mangoo@wpkg.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Bart Van Assche <bart.vanassche@gmail.com>,
	YSadgat1@gcte.com, linux-os@analogic.com,
	Alan <alan@lxorguk.ukuu.org.uk>
Subject: Re: Compact Flash Question
Date: Wed, 7 May 2008 10:53:33 -0400	[thread overview]
Message-ID: <20080507145333.GC6957@csclub.uwaterloo.ca> (raw)
In-Reply-To: <48215673.3060201@wpkg.org>

On Wed, May 07, 2008 at 09:12:51AM +0200, Tomasz Chmielewski wrote:
> Compact Flash (and other similar media) does wear levelling, so 
> essentially, even if we write to the same fixed location, in reality, it 
> will mostly go to a different area on flash each time.
> 
> As Compact Flash and its wear levelling does not know about free space on 
> the filesystem, the wear levelling's effectiveness can be only limited - 
> writes won't spread on the whole free area of the flash.
> 
> Does anyone know how wear levelling is done in these devices? Perhaps it 
> will differ from a manufacturer to manufacturer, but I guess they have a 
> free area we normally use to store data, and some reserved area used just 
> for wear levelling and bad block handling, but that's just my guess.

Certainly some cards will take blocks that haven't been changed very
much and exchange them for blocks that have been written more often
(this being physical blocks, not the virtual mapping shown to the
outside).  That way the wear gets spread around more even if some parts
of the flash are never changed (from the point of view of the outside).

The actual algorithm used is vendor specific.

-- 
Len Sorensen

  parent reply	other threads:[~2008-05-07 14:53 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-07  7:12 Tomasz Chmielewski
2008-05-07  7:44 ` Bart Van Assche
2008-05-07  7:54   ` Tomasz Chmielewski
2008-05-07  7:58     ` Bart Van Assche
2008-05-07 12:31     ` Helge Hafting
2008-05-07 15:01       ` Stéphane ANCELOT
2008-05-07 16:46         ` Bart Van Assche
2008-05-08 13:26           ` Mark Lord
2008-05-08 14:27           ` Lennart Sorensen
2008-05-08 14:59             ` Willy Tarreau
2008-05-07 14:53 ` Lennart Sorensen [this message]
  -- strict thread matches above, loose matches on Subject: below --
2008-05-06 21:59 Yigal Sadgat
2008-05-06 22:09 ` Alan Cox
2008-05-13 17:13   ` Yigal Sadgat
2008-05-06 22:22 ` linux-os (Dick Johnson)
2008-05-07  6:15 ` Bart Van Assche
2008-05-07  7:39   ` Alan Cox

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=20080507145333.GC6957@csclub.uwaterloo.ca \
    --to=lsorense@csclub.uwaterloo.ca \
    --cc=YSadgat1@gcte.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=bart.vanassche@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-os@analogic.com \
    --cc=mangoo@wpkg.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

all inboxes | Powered by JetHome®