11 Jun, 2016
1 commit
-
We always mixed in the parent pointer into the dentry name hash, but we
did it late at lookup time. It turns out that we can simplify that
lookup-time action by salting the hash with the parent pointer early
instead of late.A few other users of our string hashes also wanted to mix in their own
pointers into the hash, and those are updated to use the same mechanism.Hash users that don't have any particular initial salt can just use the
NULL pointer as a no-salt.Cc: Vegard Nossum
Cc: George Spelvin
Cc: Al Viro
Signed-off-by: Linus Torvalds
14 Feb, 2015
1 commit
-
sm->offset maybe wrong but magic maybe right, the offset do not have CRC.
Badness at c00c7580 [verbose debug info unavailable]
NIP: c00c7580 LR: c00c718c CTR: 00000014
REGS: df07bb40 TRAP: 0700 Not tainted (2.6.34.13-WR4.3.0.0_standard)
MSR: 00029000 CR: 22084f84 XER: 00000000
TASK = df84d6e0[908] 'mount' THREAD: df07a000
GPR00: 00000001 df07bbf0 df84d6e0 00000000 00000001 00000000 df07bb58 00000041
GPR08: 00000041 c0638860 00000000 00000010 22084f88 100636c8 df814ff8 00000000
GPR16: df84d6e0 dfa558cc c05adb90 00000048 c0452d30 00000000 000240d0 000040d0
GPR24: 00000014 c05ae734 c05be2e0 00000000 00000001 00000000 00000000 c05ae730
NIP [c00c7580] __alloc_pages_nodemask+0x4d0/0x638
LR [c00c718c] __alloc_pages_nodemask+0xdc/0x638
Call Trace:
[df07bbf0] [c00c718c] __alloc_pages_nodemask+0xdc/0x638 (unreliable)
[df07bc90] [c00c7708] __get_free_pages+0x20/0x48
[df07bca0] [c00f4a40] __kmalloc+0x15c/0x1ec
[df07bcd0] [c01fc880] jffs2_scan_medium+0xa58/0x14d0
[df07bd70] [c01ff38c] jffs2_do_mount_fs+0x1f4/0x6b4
[df07bdb0] [c020144c] jffs2_do_fill_super+0xa8/0x260
[df07bdd0] [c020230c] jffs2_fill_super+0x104/0x184
[df07be00] [c0335814] get_sb_mtd_aux+0x9c/0xec
[df07be20] [c033596c] get_sb_mtd+0x84/0x1e8
[df07be60] [c0201ed0] jffs2_get_sb+0x1c/0x2c
[df07be70] [c0103898] vfs_kern_mount+0x78/0x1e8
[df07bea0] [c0103a58] do_kern_mount+0x40/0x100
[df07bec0] [c011fe90] do_mount+0x240/0x890
[df07bf10] [c0120570] sys_mount+0x90/0xd8
[df07bf40] [c00110d8] ret_from_syscall+0x0/0x4=== Exception: c01 at 0xff61a34
LR = 0x100135f0
Instruction dump:
38800005 38600000 48010f41 4bfffe1c 4bfc2d15 4bfffe8c 72e90200 4082fc28
3d20c064 39298860 8809000d 68000001 2f800000 419efc0c 38000001
mount: mounting /dev/mtdblock3 on /common failed: Input/output errorSigned-off-by: Chen Jie
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse
27 Mar, 2012
5 commits
-
Use pr_fmt to prefix KBUILD_MODNAME to appropriate logging messages.
Remove now unnecessary internal prefixes from formats.
Signed-off-by: Joe Perches
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Use the more current logging style.
Coalesce formats, align arguments.
Convert uses of embedded function names to %s, __func__.A couple of long line checkpatch errors I don't care about exist.
Signed-off-by: Joe Perches
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
D1 and D2 macros are mostly uses to emit debugging messages.
Convert the logging uses of D1 & D2 to jffs2_dbg(level, fmt, ...)
to be a bit more consistent style with the rest of the kernel.All jffs2_dbg output is now at KERN_DEBUG where some of
the previous uses were emitted at various KERN_s.Signed-off-by: Joe Perches
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Correct spelling "scaning" to scanning" in
fs/jffs2/scan.cSigned-off-by: Masanari Iida
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Commit 10934478e44d9a5a7b16dadd89094fb608cf101e did not remove now useless
"if (mtd->point)" check mistakingly - let's kill it now.Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse
10 Jan, 2012
4 commits
-
Remove direct usage of the "mtd->point" function pointer. Instead,
test the mtd_point() return code for '-EOPNOTSUPP'.Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse
11 Sep, 2011
1 commit
-
kfree() deals gracefully with NULL pointers, so it's pointless to test for
one prior to calling it.
This removes such a test from jffs2_scan_medium().Signed-off-by: Jesper Juhl
Signed-off-by: Artem Bityutskiy
25 May, 2011
1 commit
-
Replace direct call to kmalloc for a potentially large, contiguous
buffer allocation with one to mtd_kmalloc_up_to which helps ensure the
operation can succeed under low-memory, highly- fragmented situations
albeit somewhat more slowly.Signed-off-by: Grant Erickson
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse
25 Oct, 2010
1 commit
-
Scanning 1024 bytes to see if an EB is empty is a bit much.
Lower it to 256 bytes and make sure the while loop is
optimized.Signed-off-by: Joakim Tjernlund
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse
20 May, 2010
1 commit
-
This is now done in a GC pass; we don't need to trigger kupdated to do it.
Signed-off-by: David Woodhouse
23 Jun, 2009
1 commit
-
Signed-off-by: David Woodhouse
15 Jun, 2009
1 commit
-
In case of an error returned by file_dirty() 's' is not freed as the cleanup
path is skipped.Reported by Coverity.
Signed-off-by: Christian Engelmayer
Signed-off-by: David Woodhouse
02 May, 2008
2 commits
-
Adding the ability to get a physical address from point() in addition
to virtual address. This physical address is required for XIP of
userspace code from flash.Signed-off-by: Jared Hulbert
Reviewed-by: Jörn Engel
Acked-by: Nicolas Pitre
Acked-by: Greg Ungerer
Signed-off-by: David Woodhouse -
To support NFS export, we need to know the parent inode of directories.
Rather than growing the jffs2_inode_cache structure, share space with
the nlink field -- which was always set to 1 for directories anyway.Signed-off-by: David Woodhouse
13 Oct, 2007
1 commit
-
In three places: summary scan, normal scan, REF_PRISTINE GC.
Just truncate at the NUL, since that was the correct thing to do in the
only case where this (inexplicable) breakage has been seen.Signed-off-by: David Woodhouse
24 Sep, 2007
1 commit
-
Fix a couple of instances in JFFS2 where the unpoint() routine is
being called with the wrong length in cases where the point() routine
truncated a request.Signed-off-by: Andy Lowe
Signed-off-by: Nicolas Pitre
Signed-off-by: David Woodhouse
10 Jul, 2007
1 commit
-
Convert many spaces to tabs; one or two other minor cosmetic fixes.
Signed-off-by: David Woodhouse
29 Jun, 2007
1 commit
-
Otherwise they'll never actually get garbage-collected.
Noted by Jonathan Larmour.Signed-off-by: David Woodhouse
25 Apr, 2007
2 commits
-
In particular, remove the bit in the LICENCE file about contacting
Red Hat for alternative arrangements. Their errant IS department broke
that arrangement a long time ago -- the policy of collecting copyright
assignments from contributors came to an end when the plug was pulled on
the servers hosting the project, without notice or reason.We do still dual-license it for use with eCos, with the GPL+exception
licence approved by the FSF as being GPL-compatible. It's just that nobody
has the right to license it differently.Signed-off-by: David Woodhouse
-
No need to check for all-zero header since the header cannot
be zero due to other checks.Replace the all-zero header check in readinode.c with a
check for the magic word.Signed-off-by: Joakim Tjernlund
Signed-off-by: David Woodhouse
18 Apr, 2007
2 commits
-
Remove excessive scanning of empty flash after a clean
marker for users of the point/unpoint method. cfi_cmdset_0001
uses point/unpoint by default iff flash mapping is linear.
The speedup is several orders of magnitude if FS is less than
half full.Signed-off-by: Joakim Tjernlund
Signed-off-by: David Woodhouse -
Check the node CRC on scan before doing anything else with the node.
Signed-off-by: Thomas Gleixner
Signed-off-by: David Woodhouse
09 Mar, 2007
1 commit
-
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
09 Feb, 2007
1 commit
-
Nowadays MTD supports an MTD_OOB_AUTO option which allows users
to access free bytes in NAND's OOB as a contiguous buffer, although
it may be highly discontinuous.This patch teaches JFFS2 to use this nice feature instead of the
old MTD_OOB_PLACE option. This for example caused problems with
OneNAND. Now JFFS2 does not care how are the free bytes situated.This may change position of the clean marker on some flashes,
but this is not a problem. JFFS2 will just re-erase the empty
eraseblocks and write the new (correct) clean marker.Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse
10 Jan, 2007
1 commit
-
Make JFFS2 nicer and teach it to call cond_resched() in loops
which may be quite large.Signed-off-by: Artem Bityutskiy
03 Jan, 2007
1 commit
-
Signed-off-by: Amit Choudhary
Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse
10 Dec, 2006
1 commit
-
Replace kmalloc+memset with kzalloc
Signed-off-by: Yan Burman
Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse
30 Jun, 2006
1 commit
-
This patch makes two needlessly global functions static.
Signed-off-by: Adrian Bunk
Signed-off-by: David Woodhouse
27 Jun, 2006
2 commits
-
In the followinf situation, an explicit delete marker is not
necessary, because we can certainlly detect those obsolete
xattr_datum or xattr_ref on next mounting.- When to delete xattr_datum node.
- When to delete xattr_ref node on removing inode.
- When to delete xattr_ref node on updating xattr.This patch rids writing delete marker in those situations.
Signed-off-by: KaiGai Kohei
Signed-off-by: David Woodhouse -
- When xdatum is removed, a new xdatum with 'delete marker' is
written. (version==0xffffffff means 'delete marker')
- When xref is removed, a new xref with 'delete marker' is written.
(odd-numbered xseqno means 'delete marker')- delete_xattr_(datum/xref)_delay() are new deletion functions
are added. We can only use them if we can detect the target
obsolete xdatum/xref as a orphan or errir one.
(e.g when inode deletion, or detecting crc error)[1/3] jffs2-xattr-v6-01-delete_marker.patch
Signed-off-by: KaiGai Kohei
Signed-off-by: David Woodhouse
30 May, 2006
1 commit
-
Helps if we look _inside_ the buffer, rather than adding jeb->offset to
it. Doh.Signed-off-by: David Woodhouse
29 May, 2006
1 commit
-
Signed-off-by: David Woodhouse
25 May, 2006
3 commits
-
Signed-off-by: David Woodhouse
-
Print wasted_size in scanned eraseblocks, print range correctly for
summary dirent and inode entries.Signed-off-by: David Woodhouse
-
Preallocation of refs is shortly going to be a per-eraseblock thing,
rather than per-filesystem. Add the required argument to the function.Signed-off-by: David Woodhouse