All blocks in erasable_pending_wbuf_list
Estelle HAMMACHE <[email protected]> Fri, 24 Sep 2004 18:49:10 +0200
| Newsgroups | gmane.linux.file-systems.jffs |
|---|---|
| Message-ID | <[email protected]> |
Hello,
here is my test scenario (still with eCos/NAND)
I create a file and write 2KB buffers to it (append)
until the file system is full. Then I close the file
and I unlink it.
When I want to create another file, the "open" returns
an error because no block is found for GC.
Actually most blocks are in the "erasable_pending_wbuf_list"
except 2 free blocks and nextblock.
Here is a patch which seems to correct the problem
(not sure about multi-tasking protection though)
Any comments ?
Bye
Estelle
nodemgmt.c ( $Id: nodemgmt.c,v 1.107 2003/11/26 15:30:58 dwmw2 Exp $ )
121,129c121
< {
< if ((ret == -EIO) && !list_empty(&c->erasable_pending_wbuf_list))
< {
< D1(printk(KERN_DEBUG "jffs2: Flushing write buffer instead of garbage collect\n"));
< jffs2_flush_wbuf_pad(c);
< }
< else
< return ret;
< }
---
> return ret;
To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to [email protected]