On Wed, 14 Apr 2010 09:57:20 +0200
Anders Larsen <al@alarsen.net> wrote:
Attempting the allocation at mtdblock_writesect()-time is the least
reliable approach.
It would be much more reliable to perform the allocation at boot-time
or modprobe-time.
It would be 100% reliable to perform the allocation at compile time
too! If that's possible. A statically allocated buffer with
appropriate locking around it to prevent it from getting scribbled on.
Of course, this assumes that the buffer is shared between different
devices and it won't work at all if cache_data is really a "cache".
Ho-hum. Anyway, please do try to find a way to make this allocation
more reliable. It'd be pretty bad to have an embedded device go crump
when the user tries to save his data.
Also, the mdtblock code has changed a lot in this very area in the
linux-next tree (mtdblks[] has gone away). So please redo any patch
against linux-next.
Finally.. Wouldn't it be better to just fix the atmel SPI driver so
that it doesn't barf when handed vmalloc'ed memory? Who do we ridicule
about that? <checks, adds cc>
--