(unknown)
"J B" <[email protected]>
| Newsgroups | gmane.linux.file-systems.jffs |
|---|---|
| Message-ID | <[email protected]> |
A jffs2 internals question for the masses: Besides the 128Kb max kmalloc issue, is there any restriction on the size of an eraseblock that jffs2 can use? I am using the slram driver with a 4Kb eraseblock size to create a 4Mb ram device. I mount jffs2 on top of this and everything appears to work until the filesystem becomes full. I try removing a file and the remove command returns "rm: cannot unlink `foo' : No space left on device". df reports 100% usage. Also, looking at the output from having CONFIG_JFFS2_FS_DEBUG=1, it appears that garbage collection is constantly running and picking blocks from the clean list because there are none on the dirty list. Eventually even this fails and the garbage collector loops and complains repeatedly: "Argh. No free space left for GC. nr_erasing_blocks is 0. nr_free_blocks is 0. (erasingempty: yes, erasependingempty: yes) jffs2_reserve_space_gc of 196 bytes for garbage_collect_dnode failed: -28" The thread_should_wake is returning 1 because the dirty size is > an eraseblock, so it loops forever. If I switch the eraseblock size in slram back to 64Kb, this problem does not appear. So again, are there any restricitons on how small of an eraseblock size you can use, or is this something that hasn't ever really been an issue? TIA, j _________________________________________________________________ Get a FREE computer virus scan online from McAfee. http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963 To unsubscribe from this list: send the line "unsubscribe jffs-dev" in the body of a message to [email protected]