[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: JFFS2 empty file overhead questions

jlavi@xxxxxxx.fi said:
>  After creating 25531 the used space had grown to 3312 K. Initially it
> had been 320K. This would suggest the empty file size overhead on
> JFFS2 is (3312 - 320)*1024 / 25531 =  120.00 bytes.

Sounds about right. 

((sizeof(struct jffs2_raw_dirent) + strlen(name) + 3) & ~3)
	+ sizeof(struct jffs2_raw_inode)

Where sizeof(jffs2_raw_dirent) == 40, sizeof(jffs2_raw_inode) == 68.

>  I also tracked the file creation time. This showed linear first
> degree dependence on the number of files created. On that particular
> device empty file creation (file open) time can be presented as a
> function t_c over the number of created files so far: 

That one I can probably settle without seeing a profile -- we look through a
single (but sorted) linked list in jffs2_lookup(). We could consider
optimising that if it's a problem, but I suspect it's not in the real world.

>  After 25519 files I couldn't track space usage with "df" anymore
> because it started to give out of memory message. After 26647 my test
> program couldn't run anymore because of out of memory. Needles to say,
> but my test program doesn't allocate memory nor leave files open when
> it proceeds. 

cat /proc/slabinfo /proc/meminfo /proc/sys/fs/inode-nr


To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com