UBIFS abnormal unaligned access at OneNAND 4KiB page

Kyungmin Park kmpark at infradead.org
Mon Aug 3 02:34:31 EDT 2009


On Mon, Aug 3, 2009 at 3:29 PM, Adrian Hunter<adrian.hunter at nokia.com> wrote:
> Kyungmin Park wrote:
>>
>> Hi Adrian,
>>
>> Now I'm working with 4KiB pagesize OneNAND, I got problem with
>> unaligned byte align again.
>>
>> <7>UBIFS DBG (pid 1): read_znode: LEB 78:205824, level 0, 8 branch
>> <7>UBIFS DBG (pid 1): ubifs_read_node: LEB 78:206016, indexing node,
>> length 48
>> onenand_mlc_read_ops_nolock[1108] buf c41bda80 1216 48
>> <7>UBIFS DBG (pid 1): read_znode: LEB 78:206016, level 0, 1 branch
>> onenand_mlc_read_ops_nolock[1108] buf c40a68c0 441 13
>> onenand_read_bufferram[674] area 0x400, buffer c40a68c0, offset 441, count
>> 13
>> <1>Unhandled fault: external abort on non-linefetch (0x1008) at 0xc58805ba
>>
>> In the previous time, we got the similar case. but the problem gone
>> with some patch. but it happens again.
>>
>> Do you have any idea?
>
> It is up to your driver to meet your bus requirements.  If the bus requires
> word (2 bytes) aligned accesses then you must check the alignment in the
> driver and read the ends words separately.

It's onenand_base.c. Only change is page size is 4KiB. others are same.

>
> UBIFS does make unaligned reads to the LPT e.g. reading 13 bytes at offset
> 441

I think so. but now I got the these unaligned reads.
That's mystery

Thank you,
Kyungmin Park



More information about the linux-mtd mailing list