RE: [Yaffs] yaffs problem: !!!!!!!!! Allocator out !!!!!!!!!…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: Gennady Dagman, yaffs
CC: Paul Lima, Blair Barnett
Subject: RE: [Yaffs] yaffs problem: !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!


>
> We ran into this situation with 1Gb partition on NAND having
> about 27Mb free space. I suppose there were pretty heavy file
> processing performed at this time.
>
> There were dozens of these "Allocator out" messages
> accompanied by "yaffs tragedy: no more eraased blocks" and
> many file operations failed.
>
> I think that in this situation GC was not fast enough to
> provide new blocks for allocation.


The GC is not in a separate thread, but as a parasitic activity from
within writes etc, so there is no question of it being "fast enough" and
heavy file allocation should not matter.

Are you getting a lot of bad blocks? About the only way I can see that
allocation failures are likely is with blocks going bad during garbage
collection.

>
> Question:
> ---------
> I see that currently so called "aggressive" GC strategy is
> triggered when number of erased blocks is less than 15. I
> believe this value depends on those hard-coded values:
>
>     dev->nReservedBlocks = 5;
>     dev->nShortOpCaches = 10;

>
> What are the guidelines for choosing above constants ? Should
> we probably adjust them for bigger sized partitions ?


No, that will not really change things. It might just put off the eveil
day, but it should not fix the issue.

>
> Thank you in advance for any hint you can provide.


Two things to do:

1) Show us the /proc/yaffs before/after the problem.
2) Do more tracing to see if there are bad blocks happening too.

-- Charles