#
10731f83 |
| 04-Apr-2007 |
Artem Bityutskiy <Artem.Bityutskiy@nokia.com> |
[JFFS2] fix buffer sise calculations in jffs2_get_inode_nodes()
In read inode we have an optimization which prevents one min. I/O unit (e.g. NAND page) to be read more then once.
Namely, at the beg
[JFFS2] fix buffer sise calculations in jffs2_get_inode_nodes()
In read inode we have an optimization which prevents one min. I/O unit (e.g. NAND page) to be read more then once.
Namely, at the beginning we do not know which node type we read, so we read so we assume we read the directory entry, because it has the smallest node header. When we read it, we read up to the next min. I/O unit, just because if later we'll need to read more, we already have this data.
If it turns out to be that the node is not directory entry, and we need more data, and we did not read it because it sits in the next min. I/O unit, we read the whole next (or several next) min. I/O unit(s). And if it happens to be that we read a data node, and we've read part of its data, we calculate partial CRC. So if later we need to check data CRC, we'll only read the rest of the data from further min. I/O units and continue CRC checking.
This code was a bit messy and buggy. The bug was that it assumed relatively large min. I/O unit, so that the largest node header could overlap only one min. I/O unit boundary.
This parch clean-ups the code a bit and fixes this bug. The patch was not tested on flash with small min. I/O unit, like NOR-ECC, nut it was tested on NAND with 512 bytes NAND page, so it at least does not break NAND. It was also tested with mtdram so it should not break NOR.
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
#
c7258a44 |
| 09-Mar-2007 |
David Woodhouse <dwmw2@infradead.org> |
[JFFS2] Check for all-zero node headers
Due to a poor choice of CRC32 seed, a node header which is all zeroes would pass the CRC32 check. Explicitly check for this case, and treat it as we do a CRC
[JFFS2] Check for all-zero node headers
Due to a poor choice of CRC32 seed, a node header which is all zeroes would pass the CRC32 check. Explicitly check for this case, and treat it as we do a CRC failure.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
Revision tags: v2.6.20-rc5, v2.6.20-rc4, v2.6.20-rc3, v2.6.20-rc2, v2.6.20-rc1 |
|
#
3d375d9e |
| 04-Dec-2006 |
Yan Burman <burman.yan@gmail.com> |
[JFFS2] replace kmalloc+memset with kzalloc
Replace kmalloc+memset with kzalloc
Signed-off-by: Yan Burman <burman.yan@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: David Wo
[JFFS2] replace kmalloc+memset with kzalloc
Replace kmalloc+memset with kzalloc
Signed-off-by: Yan Burman <burman.yan@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
Revision tags: v2.6.19, v2.6.19-rc6, v2.6.19-rc5, v2.6.19-rc4, v2.6.19-rc3, v2.6.19-rc2, v2.6.19-rc1, v2.6.18, v2.6.18-rc7, v2.6.18-rc6, v2.6.18-rc5, v2.6.18-rc4, v2.6.18-rc3, v2.6.18-rc2, v2.6.18-rc1 |
|
#
c7afb0f9 |
| 02-Jul-2006 |
KaiGai Kohei <kaigai@ak.jp.nec.com> |
[JFFS2][XATTR] Fix memory leak in POSIX-ACL support
jffs2_clear_acl() which releases acl caches allocated by kmalloc() was defined but it was never called. Thus, we faced to the risk of memory leaki
[JFFS2][XATTR] Fix memory leak in POSIX-ACL support
jffs2_clear_acl() which releases acl caches allocated by kmalloc() was defined but it was never called. Thus, we faced to the risk of memory leaking.
This patch plugs jffs2_clear_acl() into jffs2_do_clear_inode(). It ensures to release acl cache when inode is cleared.
Signed-off-by: KaiGai Kohei <kaigai@ak.jp.nec.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
#
355ed4e1 |
| 23-Jun-2006 |
KaiGai Kohei <kaigai@ak.jp.nec.com> |
[JFFS2][XATTR] Fix memory leak with jffs2_xattr_ref
If xattr_ref is associated with an orphan inode_cache on filesystem mounting, those xattr_refs are not released even if this inode_cache is releas
[JFFS2][XATTR] Fix memory leak with jffs2_xattr_ref
If xattr_ref is associated with an orphan inode_cache on filesystem mounting, those xattr_refs are not released even if this inode_cache is released.
This patch enables to call jffs2_xattr_delete_inode() for such a irregular inode_cachde too.
Signed-off-by: KaiGai Kohei <kaigai@ak.jp.nec.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
#
1046d880 |
| 18-Jun-2006 |
David Woodhouse <dwmw2@infradead.org> |
[JFFS2] Check CRC32 on dirent and data nodes each time they're read
Also, make sure dirents are marked REF_UNCHECKED when we 'discover' them through eraseblock summary.
Signed-off-by: David Woodhou
[JFFS2] Check CRC32 on dirent and data nodes each time they're read
Also, make sure dirents are marked REF_UNCHECKED when we 'discover' them through eraseblock summary.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
Revision tags: v2.6.17 |
|
#
3877f0b6 |
| 17-Jun-2006 |
David Woodhouse <dwmw2@infradead.org> |
[JFFS2] Don't trust node headers before the CRC is checked.
Especially when summary code is used, we can have in-memory data structures referencing certain nodes without them actually being readable
[JFFS2] Don't trust node headers before the CRC is checked.
Especially when summary code is used, we can have in-memory data structures referencing certain nodes without them actually being readable on the flash. Discard the nodes gracefully in that case, rather than triggering a BUG().
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
Revision tags: v2.6.17-rc6, v2.6.17-rc5 |
|
#
8f2b6f49 |
| 13-May-2006 |
KaiGai Kohei <kaigai@ak.jp.nec.com> |
[JFFS2][XATTR] Remove 'struct list_head ilist' from jffs2_inode_cache.
This patch can reduce 4-byte of memory usage per inode_cache.
[4/10] jffs2-xattr-v5.1-04-remove_ilist_from_ic.patch
Signed-of
[JFFS2][XATTR] Remove 'struct list_head ilist' from jffs2_inode_cache.
This patch can reduce 4-byte of memory usage per inode_cache.
[4/10] jffs2-xattr-v5.1-04-remove_ilist_from_ic.patch
Signed-off-by: KaiGai Kohei <kaigai@ak.jp.nec.com>
show more ...
|
#
aa98d7cf |
| 13-May-2006 |
KaiGai Kohei <kaigai@ak.jp.nec.com> |
[JFFS2][XATTR] XATTR support on JFFS2 (version. 5)
This attached patches provide xattr support including POSIX-ACL and SELinux support on JFFS2 (version.5).
There are some significant differences f
[JFFS2][XATTR] XATTR support on JFFS2 (version. 5)
This attached patches provide xattr support including POSIX-ACL and SELinux support on JFFS2 (version.5).
There are some significant differences from previous version posted at last December. The biggest change is addition of EBS(Erase Block Summary) support. Currently, both kernel and usermode utility (sumtool) can recognize xattr nodes which have JFFS2_NODETYPE_XATTR/_XREF nodetype.
In addition, some bugs are fixed. - A potential race condition was fixed. - Unexpected fail when updating a xattr by same name/value pair was fixed. - A bug when removing xattr name/value pair was fixed.
The fundamental structures (such as using two new nodetypes and exclusion mechanism by rwsem) are unchanged. But most of implementation were reviewed and updated if necessary. Espacially, we had to change several internal implementations related to load_xattr_datum() to avoid a potential race condition.
[1/2] xattr_on_jffs2.kernel.version-5.patch [2/2] xattr_on_jffs2.utils.version-5.patch
Signed-off-by: KaiGai Kohei <kaigai@ak.jp.nec.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
show more ...
|
Revision tags: v2.6.17-rc4, v2.6.17-rc3 |
|
#
21f1d5fc |
| 21-Apr-2006 |
David Woodhouse <dwmw2@infradead.org> |
[RBTREE] Update JFFS2 to use rb_parent() accessor macro.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
|
Revision tags: v2.6.17-rc2 |
|
#
fb6a82c9 |
| 11-Apr-2006 |
Randy Dunlap <rdunlap@xenotime.net> |
[PATCH] jffs2: fix printk warnings
Fix printk format warnings in jffs2.
Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
|
Revision tags: v2.6.17-rc1, v2.6.16, v2.6.16-rc6 |
|
#
0ef675d4 |
| 09-Mar-2006 |
Atsushi Nemoto <anemo@mba.ocn.ne.jp> |
[PATCH] mtd: 64 bit fixes
Fix some bugs in mtd/jffs2 on 64bit platform.
The MEMGETBADBLOCK/MEMSETBADBLOCK ioctl are not listed in compat_ioctl.h.
And some variables in jffs2 are declared as uint32
[PATCH] mtd: 64 bit fixes
Fix some bugs in mtd/jffs2 on 64bit platform.
The MEMGETBADBLOCK/MEMSETBADBLOCK ioctl are not listed in compat_ioctl.h.
And some variables in jffs2 are declared as uint32_t but used to hold size_t values.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Cc: Thomas Gleixner <tglx@linutronix.de> Acked-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
show more ...
|
Revision tags: v2.6.16-rc5, v2.6.16-rc4, v2.6.16-rc3, v2.6.16-rc2, v2.6.16-rc1, v2.6.15, v2.6.15-rc7, v2.6.15-rc6, v2.6.15-rc5, v2.6.15-rc4, v2.6.15-rc3, v2.6.15-rc2, v2.6.15-rc1 |
|
#
f99d49ad |
| 07-Nov-2005 |
Jesper Juhl <jesper.juhl@gmail.com> |
[PATCH] kfree cleanup: fs
This is the fs/ part of the big kfree cleanup patch.
Remove pointless checks for NULL prior to calling kfree() in fs/.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
[PATCH] kfree cleanup: fs
This is the fs/ part of the big kfree cleanup patch.
Remove pointless checks for NULL prior to calling kfree() in fs/.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
show more ...
|
#
182ec4ee |
| 07-Nov-2005 |
Thomas Gleixner <tglx@linutronix.de> |
[JFFS2] Clean up trailing white spaces
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
Revision tags: v2.6.14, v2.6.14-rc5, v2.6.14-rc4, v2.6.14-rc3 |
|
#
733802d9 |
| 22-Sep-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Debug code simplification, update TODO
Simplify the debugging code further. Update the TODO list
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <
[JFFS2] Debug code simplification, update TODO
Simplify the debugging code further. Update the TODO list
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|
Revision tags: v2.6.14-rc2, v2.6.14-rc1, v2.6.13, v2.6.13-rc7 |
|
#
280562b2 |
| 17-Aug-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Calculate CRC check starting point correctly
When data starts from the beginning of NAND page, 'len' must be zero, not c->wbuf_page.
Thanks to Zoltan Sogor for reporting this problem.
Sign
[JFFS2] Calculate CRC check starting point correctly
When data starts from the beginning of NAND page, 'len' must be zero, not c->wbuf_page.
Thanks to Zoltan Sogor for reporting this problem.
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|
#
3a69e0cd |
| 17-Aug-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Fix JFFS2 [mc]time handling
From: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
Revision tags: v2.6.13-rc6 |
|
#
45ca1b50 |
| 05-Aug-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Debug code clean up - step 7
Remove more noisy debugs. Add current->pid to debug messages. Remove bogus includes.
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by:
[JFFS2] Debug code clean up - step 7
Remove more noisy debugs. Add current->pid to debug messages. Remove bogus includes.
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|
#
3c091337 |
| 04-Aug-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Correct buggy length checks
The previous changes introduced wrong length calculations.
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linut
[JFFS2] Correct buggy length checks
The previous changes introduced wrong length calculations.
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|
#
39243508 |
| 03-Aug-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Debug code clean up - step 6
Remove extra noisy debugs
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
Revision tags: v2.6.13-rc5 |
|
#
1e0da3cb |
| 01-Aug-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Build fragtree in reverse order
Instead of building fragtree starting from node with the smallest version number, start from the highest. This helps to avoid reading and checking obsolete no
[JFFS2] Build fragtree in reverse order
Instead of building fragtree starting from node with the smallest version number, start from the highest. This helps to avoid reading and checking obsolete nodes.
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|
#
1e900979 |
| 31-Jul-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Move another fragtree-related function to nodelist.c
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
#
737b7661 |
| 30-Jul-2005 |
Andrew Lunn <andrew@lunn.ch> |
[JFFS2] Fix up new debug code for eCos build
The debug code cleanup broke the eCos build.
Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
Revision tags: v2.6.13-rc4 |
|
#
e0d60137 |
| 28-Jul-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Debug code clean up - step 5
Replace the D1(printk()) style debugging with the new debug macros
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <t
[JFFS2] Debug code clean up - step 5
Replace the D1(printk()) style debugging with the new debug macros
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|
#
f97117d1 |
| 27-Jul-2005 |
Artem B. Bityutskiy <dedekind@infradead.org> |
[JFFS2] Move scattered function into related files
Move functions to read inodes into readinode.c Move functions to handle fragtree and dentry lists into nodelist.[ch]
Signed-off-by: Artem B. Bityu
[JFFS2] Move scattered function into related files
Move functions to read inodes into readinode.c Move functions to handle fragtree and dentry lists into nodelist.[ch]
Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
show more ...
|