[PATCH/RFC] Linux MTD striping middle layer

Nicolas Pitre npitre at mvista.com
Wed Mar 22 14:40:51 EST 2006


On Wed, 22 Mar 2006, Vitaly Wool wrote:

> Alexander,
> 
> Let's look at it at the following angle. Striping is a nice concept, as well
> as many other nice concepts that exist in the world. Are they all worth being
> impemented in Linux MTD subsystem? :)

Why not, if you can configure it out.

> OTOH, what is the rationale? Make devices operate faster. Okay, why can't this
> be implemented as mtdconcat optimization?

mtdconcat provides linear access to subdevices.

The stripe module provides _interleaved_ access to subdevices.

That is the fundamental difference.

> What I'd also like to say is that having a lot of threads doesn't look
> attractive to me.

What is the problem with threads?  The kernel already uses them heavily 
for many purposes because it makes things cleaner.

> I'd rather go in for changing the whole MTD subsystem to
> make the API asynchoronus, and then you won't need many threads. But this is a
> rather dramatic change...

But do you realize that any asynchronous implementation will _still_ 
require kernel threads of its own to do the work anyway?  That's the 
reason why there is so many kernel threads running in your kernel 
already.

One thread per subdevice minus 1 is sufficient (note I don't know if it 
is implemented that way though as I didn't look at the code).


Nicolas




More information about the linux-mtd mailing list