Re: [PATCH/RFC] Linux MTD striping middle layer

Artem B. Bityutskiy
2006-03-22T15:07:26Z

On Wed, 2006-03-22 at 17:40 +0300, Alexander Belyakov wrote:
> In MTD code I saw alignment checks looking like this:
>
> if (instr->addr & (concat->mtd.erasesize - 1))
> return -EINVAL;
> It will fail if erasesize is not power-of-two number.
So, we should prohibit 3-flash striping just to please this piece of
code?

> Anyway interleaving algorithm itself makes no assumptions about number
> of subdevices. So code in the patch can be used to stripe 3, 5, etc
> devices. Just remove or replace alignment checks from stripe_erase()
> routine. It should work.
Ok, then don't write in documentation that it is possible to stripe only
2,4,8... flashes as this restriction is insane. Or write there, that if
you have a broken application, don't do 3-flash striping.

You support really exotic things like striping flashes with different
eraseblock size which I fear nobody will ever use, but you prohibit
3-chip striping which is much more useful.

--
Best Regards,
Artem B. Bityuckiy,
St.-Petersburg, Russia.