Re: [PATCH 7/17] jffs2: convert jffs2_gc_fetch_page to read_cache_page

2007-04-12 Thread Phillip Lougher
Nate Diller wrote: + page = read_cache_page(OFNI_EDONI_2SFFJ(f)-i_mapping, + start PAGE_CACHE_SHIFT, + (void *)jffs2_do_readpage_unlock, + OFNI_EDONI_2SFFJ(f)); - if (IS_ERR(pg_ptr)) { + if

Re: [PATCH 7/17] jffs2: convert jffs2_gc_fetch_page to read_cache_page

2007-04-12 Thread Phillip Lougher
Nate Diller wrote: wow, you're right. I was sure I compile-tested this ... oh, depends on MTD. oops. thanks for reviewing. does it look OK to you otherwise? Yes.. NATE - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL

Re: [ANN] Squashfs 3.3 released

2007-11-21 Thread Phillip Lougher
Dave Jones wrote: The biggest problem we've seen with it (asides from having to rediff it every time we rebase when there isn't a newer upstream) Yes, this is mainly my fault. There was a gap of 10 months between the 3.2 release in January this year, and the latest in November. With the

Re: [ANN] Squashfs 3.3 released

2007-11-21 Thread Phillip Lougher
Christoph Hellwig wrote: On Wed, Nov 21, 2007 at 02:02:43PM +, Phillip Lougher wrote: Unfortunately the move to fixed little endian filesystem will involve another filesystem layout change. The current filesystem layout still uses packed bitfield structures, and it is impossible to swap

Re: [Squashfs-devel] PROBLEM: mount empty SquashFS

2012-09-27 Thread Phillip Lougher
On Thu, Sep 27, 2012 at 10:03 PM, Greg KH g...@kroah.com wrote: On Tue, Sep 04, 2012 at 08:52:44PM +0200, Geert Uytterhoeven wrote: So I think this warrants application to the stable 3.0, 3.1, and 3.2 branches. Commit cc37f75a9ffbbfcb1c3297534f293c8284e3c5a6 (Squashfs: fix mount time sanity

Re: Re: Kernel SCM saga..

2005-04-09 Thread Phillip Lougher
On Apr 9, 2005 3:53 AM, Petr Baudis [EMAIL PROTECTED] wrote: FWIW, I made few small fixes (to prevent some trivial usage errors to cause cache corruption) and added scripts gitcommit.sh, gitadd.sh and gitlog.sh - heavily inspired by what already went through the mailing list. Everything is

Re: Re: Re: Kernel SCM saga..

2005-04-09 Thread Phillip Lougher
On Apr 10, 2005 2:42 AM, Petr Baudis [EMAIL PROTECTED] wrote: Dear diary, on Sun, Apr 10, 2005 at 03:01:12AM CEST, I got a letter where Phillip Lougher [EMAIL PROTECTED] told me that... On Apr 9, 2005 3:53 AM, Petr Baudis [EMAIL PROTECTED] wrote: FWIW, I made few small fixes (to prevent

Re: [PATCH] remove some usesless casts

2005-04-20 Thread Phillip Lougher
Jörn Engel wrote: Squashfs is extremely cast-happy. This patch makes it less so. Jörn Hi, Thanks for the patch. Unnecessary casts were one of the things mentioned when I submitted the patches to the LKML, and therefore I suspect most of them have been already fixed (but I will apply your

Re: [PATCH] remove some usesless casts

2005-04-20 Thread Phillip Lougher
Jörn Engel wrote: Your definition of _unnecessary_ casts may differ from mine. Basically, every cast is unnecessary, except for maybe one or two - if that many. Well we agree to differ then. In my experience casts are sometimes necessary, and are often less clumsy than the alternatives (such as

[PATCH][1/2] SquashFS

2005-03-14 Thread Phillip Lougher
it to the kernel. Please consider adding it. The SquashFS patch has been split into two. This email contains inode.c, the next email contains everything else. Thanks Phillip Lougher Signed-Off-By: Phillip Lougher ([EMAIL PROTECTED]) diff --new-file -urp linux-2.6.11.3/fs/squashfs/inode.c linux-2.6.11.3

[PATCH][2/2] SquashFS

2005-03-14 Thread Phillip Lougher
-squashfs/fs/squashfs/squashfs1_0.c 2005-03-14 00:53:28.052565808 + @@ -0,0 +1,439 @@ +/* + * Squashfs - a compressed read only filesystem for Linux + * + * Copyright (c) 2002, 2003, 2004, 2005 + * Phillip Lougher [EMAIL PROTECTED] + * + * This program is free software; you can redistribute

Re: [PATCH][2/2] SquashFS

2005-03-14 Thread Phillip Lougher
On Tuesday, March 15, 2005, at 01:06 am, Andrew Morton wrote: Phillip Lougher [EMAIL PROTECTED] wrote: @@ -0,0 +1,439 @@ [lots of comments from patch 1/2 are applicable here] OK. Noted :-) +#define SQUASHFS_MAX_FILE_SIZE ((long long) 1

Re: [PATCH][1/2] SquashFS

2005-03-15 Thread Phillip Lougher
Paul Jackson wrote: In the overall kernel (Linus's bk tree) I count: 733 lines matching 'for *( *; *; *)' 718 lines matching 'while *( *1 *)' In the kernel/*.c files, I count 15 of the 'for(;;)' style and 1 of the 'while(1)' style. Certainly the 'for(;;)' style is acceptable, and

Re: [PATCH][1/2] SquashFS

2005-03-15 Thread Phillip Lougher
Matt Mackall wrote: On Tue, Mar 15, 2005 at 03:50:26PM +, Phillip Lougher wrote: Paul Jackson wrote: In the overall kernel (Linus's bk tree) I count: 733 lines matching 'for *( *; *; *)' 718 lines matching 'while *( *1 *)' In the kernel/*.c files, I count 15

Re: [PATCH][2/2] SquashFS

2005-03-15 Thread Phillip Lougher
Andrew Morton wrote: Phillip Lougher [EMAIL PROTECTED] wrote: [ on-disk bitfields ] I've checked compatibilty against Intel 32 and 64 bit architectures, PPC 32/64 bit, ARM, MIPS and SPARC. I've used compilers from 2.91.x upto 3.4... hm, OK. I remain a bit skeptical but it sounds like you're

Re: [PATCH][2/2] SquashFS

2005-03-15 Thread Phillip Lougher
Matt Mackall wrote: On Mon, Mar 14, 2005 at 04:30:33PM +, Phillip Lougher wrote: +config SQUASHFS_1_0_COMPATIBILITY + bool Include support for mounting SquashFS 1.x filesystems How common are these? It would be nice not to bring in legacy code. Squashfs 1.x filesystems were

Kmap_atomic vs Kmap

2005-03-18 Thread Phillip Lougher
Andrew Morton wrote in relation to my initial SquashFS patch: Phillip Lougher [EMAIL PROTECTED] wrote: +skip_read: + memset(pageaddr + bytes, 0, PAGE_CACHE_SIZE - bytes); + kunmap(page); + flush_dcache_page(page); + SetPageUptodate(page); + unlock_page(page

Function stack size usage (was [PATCH][1/2] SquashFS)

2005-03-20 Thread Phillip Lougher
Andrew Morton wrote: Phillip Lougher [EMAIL PROTECTED] wrote: +static struct inode *squashfs_iget(struct super_block *s, squashfs_inode inode) +{ + struct inode *i; + squashfs_sb_info *msBlk = (squashfs_sb_info *)s-s_fs_info; + squashfs_super_block *sBlk = msBlk-sBlk

Re: [PATCH][2/2] SquashFS

2005-03-21 Thread Phillip Lougher
Pavel Machek wrote: Hi! Also, this filesystem seems to do the same thing as cramfs. We'd need to understand in some detail what advantages squashfs has over cramfs to justify merging it. Again, that is something which is appropriate to the changelog for patch 1/1. Well, probably Phillip can

Re: [PATCH][2/2] SquashFS

2005-03-21 Thread Phillip Lougher
Pavel Machek wrote: Well, out-of-tree maintainenance takes lot of time, too, so by keeping limited code out-of-kernel we provide quite good incentive to make those limits go away. Sorry but I'm not calling Squashfs limited and I don't think it is. If you wanted to nit-pick many of the current

Re: [PATCH][2/2] SquashFS

2005-03-21 Thread Phillip Lougher
Andrew Morton wrote: Josh Boyer [EMAIL PROTECTED] wrote: This is a useful, stable, and _maintained_ filesystem and I'm a bit surprised that there is this much resistance to it's inclusion. Although I've only been following things with half an eye, I don't think there's a lot of resistance. It's

Re: [PATCH][2/2] SquashFS

2005-03-21 Thread Phillip Lougher
Pavel Machek wrote: Hi! Perhaps squashfs is good enough improvement over cramfs... But I'd like those 4Gb limits to go away. So would I. But it is a totally groundless reason to refuse kernel submission because of that, Squashfs users are quite happily using it with such a terrible limitation.

Re: [PATCH][2/2] SquashFS

2005-03-21 Thread Phillip Lougher
Pavel Machek wrote: And people merging xfs/reiserfs4/etc did address problems pointed out in their code. Where did I say I wasn't addressing the problems pointed out in the code. All the issues I can fix I am addressing. Pavel -

Re: Squashfs without ./..

2005-03-25 Thread Phillip Lougher
H. Peter Anvin wrote: Phil Lougher wrote: Making readdir return '.' and '..' is trivially easy, as all the required information to fake '.' and '..' entries are present. The lack of '.' and '..' entries hasn't caused any problems despite cramfs/squashfs being used for a large number of years. I'm

Re: [PATCH 0/9] overlay filesystem: request for inclusion (v17)

2013-03-13 Thread Phillip Lougher
: 3.9.0-rc2-next20130313-4-iniza-small SMP mod_unload modversions $ sudo modinfo squashfs filename: /lib/modules/3.9.0-rc2-next20130313-4-iniza-small/kernel/fs/squashfs/squashfs.ko license:GPL author: Phillip Lougher phil...@squashfs.org.uk description:squashfs 4.0

Re: [PATCH] fix cramfs making duplicate entries in inode cache

2005-08-19 Thread Phillip Lougher
Dave Johnson wrote: Patch below fixes this by making get_cramfs_inode() use the inode cache before blindly creating a new entry every time. This eliminates the duplicate inodes and duplicate buffer cache. + struct inode * inode = iget_locked(sb, CRAMINO(cramfs_inode)); Doesn't

[announce] Squashfs 3.2 released

2007-01-06 Thread Phillip Lougher
Hi, I'm pleased to announce the release of Squashfs 3.2. NFS exporting is now supported, and the kernel code has been hardened against accidently or maliciously corrupted filesystems. The new release correctly handles all corrupted filesystems generated by the fsfuzzer tool (written by

Re: squashfs seems nfs-incompatible

2005-08-04 Thread Phillip Lougher
On 8/2/05, Jan Engelhardt [EMAIL PROTECTED] wrote: I found out that you cannot mount an exported squash fs. The exports(5) fsid= parameter does not help it [like it did with unionfs]. The exports(5) man page says fsid=num is necessary for filesystems on non-block devices - I don't know

Re: squashfs seems nfs-incompatible

2005-08-05 Thread Phillip Lougher
Jan Engelhardt wrote: After a short flash of idea and comparison, it turns out that squashfs is missing sb-s_export-get_parent (the only requirement as it seems). Includes that you have sb-s_export non-null, of course. sb-s_export can be set within fill_super(). Ok, thanks. I'll try and

Re: [Squashfs-devel] PROBLEM: mount empty SquashFS

2012-09-09 Thread Phillip Lougher
On Sun, Sep 9, 2012 at 7:17 PM, Ben Hutchings b...@decadent.org.uk wrote: I've queued this up for 3.2, thanks. Thanks Ben Phillip . -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at

[ANN] Squashfs 3.3 released

2007-11-05 Thread Phillip Lougher
in squashfs_readpage() if I/O error occurs. 4.2. Fixed Squashfs kernel code bug preventing file seeking beyond 2GB. 4.3. Mksquashfs now detects file size changes between first phase directory scan and second phase filesystem create. Regards Phillip Lougher - To unsubscribe

Re: [ANN] Squashfs 3.3 released

2007-11-07 Thread Phillip Lougher
maximilian attems wrote: On Mon, Nov 05, 2007 at 11:13:14AM +, Phillip Lougher wrote: The next stage after this release is to fix the one remaining blocking issue (filesystem endianness), and then try to get Squashfs mainlined into the Linux kernel again. that would be very cool! Yes

Re: [RFC/PATCH 0/2] ext4: Transparent Decompression Support

2013-07-25 Thread Phillip Lougher
On 25 July 2013 16:16, Dhaval Giani dgi...@mozilla.com wrote: On 07/24/2013 07:36 PM, Jörn Engel wrote: Assuming you use the chattr approach, that pretty much comes down to adding compression support to ext4. There have been old patches for ext2 around that never got merged. Reading up on

Re: [patch] Squashfs: sanity check information from disk

2013-07-16 Thread Phillip Lougher
On 15 July 2013 17:17, Dan Carpenter dan.carpen...@oracle.com wrote: We read the size of the name from the disk, but a larger name than expected would cause memory corruption. Thanks for the patch, it's queued for the next merge window. There's one mistake with the patch, but I can fix it when

Re: [RFC PATCH 1/1] Dual Squashfs: multicore implementation

2013-07-16 Thread Phillip Lougher
+* As of now max queue request will not be more than 64. +*/ +/* M.S Adding Threads here */ +initialise_threads(SQFS_QBUFFER_SIZE); + +#endif printk(KERN_INFO squashfs: version 4.0 (2009/01/31) Phillip Lougher\n); @@ -456,6 +504,11 @@ static int __init init_squashfs_fs(void

[GIT PULL] Squashfs updates for 3.12

2013-09-11 Thread Phillip Lougher
. Dan Carpenter (1): Squashfs: sanity check information from disk Manish Sharma (1): Squashfs: Optimized uncompressed buffer loop Phillip Lougher (5): Squashfs: fix corruption check in get_dir_index_using_name

[PATCH 0/6] Squashfs performance improvements

2013-11-07 Thread Phillip Lougher
. Minchan Kim (1): Squashfs: enhance parallel I/O Phillip Lougher (5): Squashfs: Refactor decompressor interface and code (V2) Squashfs: add multi-threaded decompression using percpu variables Squashfs: Generalise paging handling

[PATCH 5/6] Squashfs: restructure squashfs_readpage()

2013-11-07 Thread Phillip Lougher
-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Makefile |2 +- fs/squashfs/file.c | 142 +++--- fs/squashfs/file_cache.c | 38 + fs/squashfs/squashfs.h |7 +++ 4 files changed, 118 insertions(+), 71 deletions(-) create

[PATCH 3/6] Squashfs: add multi-threaded decompression using percpu variables

2013-11-07 Thread Phillip Lougher
cores. Disadvantages: it limits decompression to one thread per core. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Kconfig | 57 + fs/squashfs/Makefile| 10 +-- fs/squashfs/decompressor_multi_percpu.c | 105

[PATCH 1/6] Squashfs: Refactor decompressor interface and code (V2)

2013-11-07 Thread Phillip Lougher
; } #ifdef CONFIG_SQUASHFS_XZ diff --git a/fs/squashfs/decompressor_single.c b/fs/squashfs/decompressor_single.c new file mode 100644 index 000..c5bb694 --- /dev/null +++ b/fs/squashfs/decompressor_single.c @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2013 + * Phillip Lougher phil...@squashfs.org.uk

[PATCH 6/6] Squashfs: Directly decompress into the page cache for file data (V2)

2013-11-07 Thread Phillip Lougher
be because we've been VM reclaimed, but the other pages are still in the page cache and uptodate. * Make Kconfig option a choice, making the either-other nature of the option more explicit, and also tidying up the ifdef in the Makefile Signed-off-by: Phillip Lougher phil

[PATCH 2/6] Squashfs: enhance parallel I/O

2013-11-07 Thread Phillip Lougher
Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Kconfig | 13 +++ fs/squashfs/Makefile |9 +- fs/squashfs/decompressor_multi.c | 200 ++ 3 files changed, 221 insertions(+), 1 deletion(-) create mode 100644

[PATCH 4/6] Squashfs: Generalise paging handling in the decompressors (V2)

2013-11-07 Thread Phillip Lougher
update the code in decompressor_multi*.c Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/block.c | 27 +--- fs/squashfs/cache.c | 28 +--- fs/squashfs/decompressor.c | 14 ++-- fs

re: [RFC,1/5] squashfs: clean up squashfs_read_data

2013-10-04 Thread Phillip Lougher
Minchan Kim minc...@kernel.org wrote: The squashfs_read_data functions has a role to read a block and decompress for datablock and metadata. This patch cleans it up so it has squashfs_read_datablock and squashfs_meta_datablock and morever, squashfs_read_datablock has two part, one is just

re: [RFC,3/5] squashfs: remove cache for normal data page

2013-10-04 Thread Phillip Lougher
Minchan Kim minc...@kernel.org wrote: Sqsuashfs have used cache for normal data pages but it's pointless because MM already has cache layer and squashfs adds extra pages into MM's page cache when it reads a page from compressed block. This patch removes cache usage for normal data pages so it

re: [RFC,4/5] squashfs: support multiple decompress stream buffer

2013-10-06 Thread Phillip Lougher
Hi, This a partial review, based on the stuff I've managed to review so far! 1. This is a substantial performance improvement, which is great stuff! But like the squashfs: remove cache for normal data page patch it needs to be optional, with the previous behaviour retained as

Re: [RFC PATCH] double free in decompressor.c

2013-11-22 Thread Phillip Lougher
On 22/11/13 21:50, Geyslan Gregório Bem wrote: Coverity caught double free possibility (CID 1130962). I can patch this, but I have to know if is correct to free comp_opts in the function squashfs_decompressor_create() or it had to be done in the caller. My bet is the caller. 128void

Re: [PATCH 6/7] Squashfs: Directly decompress into the page cache for file data

2013-11-23 Thread Phillip Lougher
On 22/11/13 07:40, Roman Peniaev wrote: Hello, Phillip. one remark below: +static int squashfs_read_cache(struct page *target_page, u64 block, int bsize, + int pages, struct page **page) +{ + struct inode *i = target_page-mapping-host; + struct squashfs_cache_entry

[PATCH] Squashfs: fix failure to unlock pages on decompress error

2013-11-23 Thread Phillip Lougher
Direct decompression into the page cache. If we fall back to using an intermediate buffer (because we cannot grab all the page cache pages) and we get a decompress fail, we forgot to release the pages. Reported-by: Roman Peniaev r.peni...@gmail.com Signed-off-by: Phillip Lougher phil

[PATCH 0/4] Squashfs: performance improvement patches (V3)

2013-11-13 Thread Phillip Lougher
Hi, This is a partial patchset of V3 patches following review by myself and others. Changes are described in the individual patches. There is one additional patch which fixes a static checker error. Squashfs: Refactor decompressor interface and code (V3) Squashfs: Generalise paging handling in

[PATCH 1/4] Squashfs: Refactor decompressor interface and code (V3)

2013-11-13 Thread Phillip Lougher
of the functions in decompressor_single.c V3: * decompressor_single.c: Remove kfree(comp_opts) in error path * of squashfs_decompressor_create() * Double free of comp_opts found by static analysis, reported by * Dan Carpenter Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs

[PATCH 2/4] Squashfs: Generalise paging handling in the decompressors (V3)

2013-11-13 Thread Phillip Lougher
: slightly optimise code in page_actor.h Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/block.c | 27 + fs/squashfs/cache.c | 28 ++ fs/squashfs/decompressor.c | 14 +++-- fs/squashfs

[PATCH 4/4] Squashfs: Check stream is not NULL in decompressor_multi.c

2013-11-13 Thread Phillip Lougher
Fix static checker complaint that stream is not checked in squashfs_decompressor_destroy(). Reported-by: Dan Carpenter dan.carpen...@oracle.com Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/decompressor_multi.c |7 +++ 1 file changed, 3 insertions(+), 4 deletions

[PATCH 3/4] Squashfs: Directly decompress into the page cache for file data (V3)

2013-11-13 Thread Phillip Lougher
* squashfs_readpage_block(): Do not zero pages on decompress error * squashfs_read_cache(): free page in caller not here * page_actor.c: add comment regarding sleeping * page_actor.c: optimise code slightly Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Kconfig | 28 fs

Re: [PATCH 3/6] Squashfs: add multi-threaded decompression using percpu variables

2013-11-14 Thread Phillip Lougher
CCing Junjiro Okijima and Stephen Hemminger On 08/11/13 02:42, Minchan Kim wrote: Hello Phillip, On Thu, Nov 07, 2013 at 08:24:22PM +, Phillip Lougher wrote: Add a multi-threaded decompression implementation which uses percpu variables. Using percpu variables has advantages

[PATCH 0/7] Squashfs: performance enhancement patches

2013-11-19 Thread Phillip Lougher
): squashfs: Enhance parallel I/O Phillip Lougher (6): Squashfs: Refactor decompressor interface and code Squashfs: Add multi-threaded decompression using percpu variables (V2) Squashfs: Generalise paging handling in the decompressors Squashfs: Restructure squashfs_readpage

[PATCH 1/7] Squashfs: Refactor decompressor interface and code

2013-11-19 Thread Phillip Lougher
of the functions in decompressor_single.c Signed-off-by: Phillip Lougher phil...@squashfs.org.uk Reviewed-by: Minchan Kim minc...@kernel.org --- fs/squashfs/Makefile | 2 +- fs/squashfs/block.c | 11 +++-- fs/squashfs/decompressor.c| 47 ++--- fs

[PATCH 2/7] squashfs: Enhance parallel I/O

2013-11-19 Thread Phillip Lougher
Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Kconfig | 13 +++ fs/squashfs/Makefile | 9 +- fs/squashfs/decompressor_multi.c | 200 +++ 3 files changed, 221 insertions(+), 1 deletion(-) create mode 100644 fs

[PATCH 6/7] Squashfs: Directly decompress into the page cache for file data

2013-11-19 Thread Phillip Lougher
if=file2 of=/dev/null bs=4096 dd if=file3 of=/dev/null bs=4096 dd if=file4 of=/dev/null bs=4096 Before: 629145600 bytes (629 MB) copied, 45.8046 s, 13.7 MB/s After: 629145600 bytes (629 MB) copied, 9.29414 s, 67.7 MB/s Signed-off-by: Phillip Lougher phil...@squashfs.org.uk

[PATCH 5/7] Squashfs: Restructure squashfs_readpage()

2013-11-19 Thread Phillip Lougher
-by: Phillip Lougher phil...@squashfs.org.uk Reviewed-by: Minchan Kim minc...@kernel.org --- fs/squashfs/Makefile | 2 +- fs/squashfs/file.c | 142 --- fs/squashfs/file_cache.c | 38 + fs/squashfs/squashfs.h | 7 +++ 4 files changed

[PATCH 3/7] Squashfs: add multi-threaded decompression using percpu variables (V2)

2013-11-19 Thread Phillip Lougher
-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Kconfig | 57 ++- fs/squashfs/Makefile| 10 +--- fs/squashfs/decompressor_multi_percpu.c | 98 + 3 files changed, 145 insertions(+), 20 deletions

[PATCH 7/7] Squashfs: Check stream is not NULL in decompressor_multi.c

2013-11-19 Thread Phillip Lougher
Fix static checker complaint that stream is not checked in squashfs_decompressor_destroy(). Reported-by: Dan Carpenter dan.carpen...@oracle.com Signed-off-by: Phillip Lougher phil...@squashfs.org.uk Reviewed-by: Minchan Kim minc...@kernel.org --- fs/squashfs/decompressor_multi.c | 7 +++ 1

[PATCH 4/7] Squashfs: Generalise paging handling in the decompressors

2013-11-19 Thread Phillip Lougher
-off-by: Phillip Lougher phil...@squashfs.org.uk Reviewed-by: Minchan Kim minc...@kernel.org --- fs/squashfs/block.c | 27 ++ fs/squashfs/cache.c | 28 +++ fs/squashfs/decompressor.c | 14 -- fs/squashfs

Re: [PATCH 3/7] Squashfs: add multi-threaded decompression using percpu variables (V2)

2013-11-20 Thread Phillip Lougher
On 20/11/13 08:33, Minchan Kim wrote: On Wed, Nov 20, 2013 at 01:48:06AM +, Phillip Lougher wrote: Add a multi-threaded decompression implementation which uses percpu variables. Using percpu variables has advantages and disadvantages over implementations which do not use percpu variables

[GIT PULL] Squashfs updates for 3.13

2013-11-20 Thread Phillip Lougher
): squashfs: Enhance parallel I/O Phillip Lougher (6): Squashfs: Refactor decompressor interface and code Squashfs: add multi-threaded decompression using percpu variable Squashfs: Generalise paging handling in the decompressors Squashfs: Restructure squashfs_readpage

[GIT PULL] Squashfs bug fixes for 3.13

2013-12-03 Thread Phillip Lougher
) Just a single bug fix to the new directly decompress into the page cache code. Phillip Lougher (1): Squashfs: fix failure to unlock pages on decompress error fs/squashfs/file_direct.c | 5 - 1 file

Re: [PATCH] xz: make XZ_DEC_BCJ filters non-optional

2014-03-11 Thread Phillip Lougher
On 05/03/14 16:24, Lasse Collin wrote: On 2014-03-05 Phillip Lougher wrote: (BTW Kyle you should have CC'd me on the patch as a courtesy). I could have done that too but somehow I didn't, sorry. np But speaking as the Squashfs author, the lack of BCJ support for an architecture creates

Re: linux-next: build failure after merge of the squashfs tree

2013-10-31 Thread Phillip Lougher
committer Phillip Lougher phil...@squashfs.org.uk 2013-10-31 23:06:37 (GMT) These things happen when you rush to get the patches ready for the linux-next tree. Squashfs is spare-time work for me, which means I often have no choice to work on it during the night. Previously when pushing such work

Re: linux-next: build failure after merge of the squashfs tree

2013-10-31 Thread Phillip Lougher
On 01/11/13 03:06, Phillip Lougher wrote: On 01/11/13 00:57, Stephen Rothwell wrote: Hi Phillip, After merging the squashfs tree, today's linux-next build (powerpc ppc64_defconfig) failed like this: fs/squashfs/decompressor_single.c: In function 'squashfs_decompressor_create': fs/squashfs

re: [PATCH] squashfs: enhance parallel I/O

2013-10-23 Thread Phillip Lougher
: Refactor decompressor interface and code Cc: Phillip Lougher phil...@squashfs.org.uk Signed-off-by: Minchan Kim minc...@kernel.org --- fs/squashfs/Kconfig | 12 +++ fs/squashfs/Makefile |9 +- fs/squashfs/decompressor_multi.c | 194

[PATCH] Squashfs: Refactor decompressor interface and code

2013-10-07 Thread Phillip Lougher
to/or should need to access anything within it. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Makefile | 2 +- fs/squashfs/block.c | 11 ++-- fs/squashfs/decompressor.c| 47 +++-- fs/squashfs/decompressor.h| 21

[PATCH 1/3] Squashfs: Generalise paging handling in the decompressors

2013-10-11 Thread Phillip Lougher
-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/block.c | 27 +++- fs/squashfs/cache.c | 28 fs/squashfs/decompressor.c| 14 +++--- fs/squashfs/decompressor.h| 5 ++-- fs/squashfs/decompressor_single.c | 9

[PATCH 0/3] Squashfs: Directly decompress into the page cache for file data

2013-10-11 Thread Phillip Lougher
This patch-set introduces an implementation of squashfs_readpage() that directly decompresses into the page cache. It first generalises the decompressors by adding a page handler abstraction. This adds helpers to allow the decompressors to access and process the output buffers in an

[PATCH 2/3] Squashfs: restructure squashfs_readpage()

2013-10-11 Thread Phillip Lougher
-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/Makefile | 1 + fs/squashfs/file.c | 142 --- fs/squashfs/file_cache.c | 38 + fs/squashfs/squashfs.h | 7 +++ 4 files changed, 118 insertions(+), 70 deletions(-) create mode

[PATCH 3/3] Squashfs: Directly decompress into the page cache for file data

2013-10-11 Thread Phillip Lougher
if=file2 of=/dev/null bs=4096 dd if=file3 of=/dev/null bs=4096 dd if=file4 of=/dev/null bs=4096 Before: 629145600 bytes (629 MB) copied, 45.8046 s, 13.7 MB/s After: 629145600 bytes (629 MB) copied, 9.29414 s, 67.7 MB/s Signed-off-by: Phillip Lougher phil...@squashfs.org.uk

[PATCH 4/5] Squashfs: add corruption check in get_dir_index_using_offset()

2013-09-05 Thread Phillip Lougher
buffer overflow, merely lots of unnecessary amounts of data to be read. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/dir.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/fs/squashfs/dir.c b/fs/squashfs/dir.c index 1192084..bd7155b 100644

[PATCH 3/5] Squashfs: fix corruption checks in squashfs_readdir()

2013-09-05 Thread Phillip Lougher
are not trapped. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/dir.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/fs/squashfs/dir.c b/fs/squashfs/dir.c index f7f527b..1192084 100644 --- a/fs/squashfs/dir.c +++ b/fs/squashfs/dir.c @@ -105,9 +105,8

[PATCH 5/5] Squashfs: add corruption check for type in squashfs_readdir()

2013-09-05 Thread Phillip Lougher
We read the type field from disk. This value should be sanity checked for correctness to avoid an out of bounds access when reading the squashfs_filetype_table array. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/dir.c | 7 +-- fs/squashfs/squashfs_fs.h | 5

[PATCH 1/5] Squashfs: fix corruption check in get_dir_index_using_name()

2013-09-05 Thread Phillip Lougher
it. Errors in reading the index are deliberately non-fatal. If we get an error in reading the index we just return the part of the index we have managed to read - the index isn't essential, just quicker. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/namei.c | 4 +--- 1 file

[PATCH 2/5] Squashfs: fix corruption checks in squashfs_lookup()

2013-09-05 Thread Phillip Lougher
are not trapped. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/namei.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/squashfs/namei.c b/fs/squashfs/namei.c index 342a5aa..67cad77 100644 --- a/fs/squashfs/namei.c +++ b/fs/squashfs/namei.c @@ -147,7

[PATCH 0/5] Squashfs: extra sanity checks and sanity check fixes

2013-09-05 Thread Phillip Lougher
to decompress the metadata. So corrupted data does not normally get as far as the code paths in question here. Phillip Lougher (5): Squashfs: fix corruption check in get_dir_index_using_name() Squashfs: fix corruption checks in squashfs_lookup() Squashfs: fix corruption checks

Re: [PATCH 1/1] Squashfs: Optimized uncompressed buffer loop

2013-08-28 Thread Phillip Lougher
Manish Sharma manish...@gmail.com wrote: Merged the two for loops. We might get a little gain by overlapping wait_on_bh and the memcpy operations. --- fs/squashfs/block.c |9 +++-- 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/fs/squashfs/block.c b/fs/squashfs/block.c

Re: squashfs enhance [RFC 3/5] squashfs: remove cache for normal data page

2013-09-25 Thread Phillip Lougher
Minchan Kim minc...@kernel.org wrote: Hello chintu, On Wed, Sep 25, 2013 at 5:13 PM, chintu kumar chintu.k...@gmail.com wrote: Hi Minchan, Thanks for the response! I checked add_to_page_cache_lru and you are right for existing pages in page cache it won't add the page you allocated so my

[PATCH 0/2] Squashfs: add LZ4 compression

2013-07-21 Thread Phillip Lougher
Hi Now that LZ4 compression support is in 3.11-rc1, I have written the following two patches for Squashfs to use it. Phillip Lougher (2): Squashfs: add LZ4 compression support Squashfs: Add LZ4 compression configuration option Documentation/filesystems/squashfs.txt |8 +- fs/squashfs

[PATCH 2/2] Squashfs: Add LZ4 compression configuration option

2013-07-21 Thread Phillip Lougher
Add the glue code, and also update the documentation. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- Documentation/filesystems/squashfs.txt |8 fs/squashfs/Kconfig| 15 +++ fs/squashfs/Makefile |1 + fs/squashfs

[PATCH 1/2] Squashfs: add LZ4 compression support

2013-07-21 Thread Phillip Lougher
Add support for reading file systems compressed with the LZ4 compression algorithm. This patch adds the LZ4 decompressor wrapper code. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/lz4_wrapper.c | 163 + fs/squashfs

Re: [PATCH 0/2] Squashfs: add LZ4 compression

2013-07-21 Thread Phillip Lougher
kernels and initramfs data. Ultimately it is up to people to experiment and choose whatever compression is best for their systems. People are welcome to try the patches out and report their findings. Phillip Thanks, Gu On 07/22/2013 10:21 AM, Phillip Lougher wrote: Hi Now that LZ4

Re: [PATCH 0/2] Squashfs: add LZ4 compression

2013-07-22 Thread Phillip Lougher
On 22 July 2013 07:04, Gu Zheng guz.f...@cn.fujitsu.com wrote: On 07/22/2013 01:07 PM, Phillip Lougher wrote: On 22 July 2013 04:05, Gu Zheng guz.f...@cn.fujitsu.com wrote: Hi Phillip, Have some tests been carried out to confirm that Squashfs really can get benefit from LZ4

Re: [PATCH 0/2] Squashfs: add LZ4 compression

2013-07-23 Thread Phillip Lougher
On 23 July 2013 16:10, Bruno Wolff III br...@wolff.to wrote: On Mon, Jul 22, 2013 at 03:21:01 +0100, Phillip Lougher phil...@squashfs.org.uk wrote: Hi Now that LZ4 compression support is in 3.11-rc1, I have written the following two patches for Squashfs to use it. If this gets accepted

[ANN] Squashfs tools 4.3 released

2014-05-13 Thread Phillip Lougher
Hi, I'm pleased to announce the release of Squashfs tools 4.3. This is the first release in over 3 years, and there are substantial improvements to stability, new compression options and compressors, speed optimisations, new options for Mksquashfs/Unsquashfs, and fixes for CVE-2012-4024 and

Re: [PATCH] Squashfs: add asynchronous read support

2013-12-22 Thread Phillip Lougher
On 16/12/13 05:30, Chanho Min wrote: This patch removes synchronous wait for the up-to-date of buffer in the file system level. Instead all operations after submit_bh are moved into the End-of-IO handler and its associated workeque. It decompresses/copies data into pages and unlock them

[PATCH 2/2] Squashfs: Add LZ4 compression configuration option

2014-11-27 Thread Phillip Lougher
Add the glue code, and also update the documentation. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- Documentation/filesystems/squashfs.txt |8 fs/squashfs/Kconfig| 15 +++ fs/squashfs/Makefile |1 + fs/squashfs

[PATCH 1/2] Squashfs: add LZ4 compression support

2014-11-27 Thread Phillip Lougher
Add support for reading file systems compressed with the LZ4 compression algorithm. This patch adds the LZ4 decompressor wrapper code. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- fs/squashfs/lz4_wrapper.c | 142 + fs/squashfs

[PATCH 0/2] Squashfs: add LZ4 compression

2014-11-27 Thread Phillip Lougher
requests to repost these patches and to get them mainlined. My intention is to submit them in the next kernel merge window. If you want LZ4 support in Squashfs now is a good time to publically support the inclusion of these patches. Phillip Lougher (2): Squashfs: add LZ4 compression support

Re: [PATCH 0/2] Squashfs: add LZ4 compression

2014-12-12 Thread Phillip Lougher
On 12/12/14 15:56, Bruno Wolff III wrote: On Fri, Dec 12, 2014 at 13:23:19 +0100, toki clover tokiclo...@gmail.com wrote: Now, I did not see any Linux FS devs activity/response to this... What a waste of time because if those patch don't make it for this merge window, rebasing/reposting will

[GIT PULL] Squashfs updates for 3.19

2014-12-14 Thread Phillip Lougher
, and the necessary configuration option. Phillip Lougher (2): Squashfs: add LZ4 compression support Squashfs: Add LZ4 compression configuration option Documentation/filesystems/squashfs.txt |8 +- fs/squashfs/Kconfig

[PATCH 2/2 V2] Squashfs: Add LZ4 compression configuration option

2014-11-27 Thread Phillip Lougher
Add the glue code, and also update the documentation. Signed-off-by: Phillip Lougher phil...@squashfs.org.uk --- V2 patch: when porting the code to the latest -rc I forgot to update the case where CONFIG_SQUASHFS_LZ4 is not defined, leading to a build error. Trivial change: +#ifndef

Re: [RFC] Using squashfs, kernel will hung task with no free memory?

2015-01-22 Thread Phillip Lougher
On 22/01/15 02:28, long.wanglong wrote: hi, I have encountered kernel hung task when running stability and stress test. test scenarios: 1)the kernel hungtask settings are following: hung_task_panic = 1 hung_task_timeout_secs = 120 2)the rootfs

Re: squashfs-tools: Add -offset option to skip n bytes at the start of the file

2017-01-30 Thread Phillip Lougher
On Sun, Jan 29, 2017 at 2:00 PM, Ritesh Raj Sarraf wrote: > On Sun, 2017-01-29 at 03:33 -0800, probonopd wrote: >> Yes, I am not happy about that. >> You could either push your change to the squashfs folks >> Sent a PR half a year ago but no reaction:

Re: [PATCH v4 4/5] squashfs: Add zstd support

2017-08-13 Thread Phillip Lougher
On Sun, Aug 13, 2017 at 9:31 AM, Geert Uytterhoeven wrote: > On Fri, Aug 4, 2017 at 10:19 PM, Nick Terrell wrote: >> --- a/fs/squashfs/decompressor.c >> +++ b/fs/squashfs/decompressor.c >> @@ -65,6 +65,12 @@ static const struct squashfs_decompressor >>

  1   2   3   >