[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200903102224.22994.s.L-H@gmx.de>
Date: Tue, 10 Mar 2009 22:24:21 +0100
From: Stefan Lippers-Hollmann <s.L-H@....de>
To: Geert Uytterhoeven <Geert.Uytterhoeven@...ycom.com>
Cc: Phillip Lougher <phillip@...gher.demon.co.uk>,
Linux-kernel@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [GIT PULL] Squashfs fixes for 2.6.29?
Hi
On Dienstag, 10. März 2009, Geert Uytterhoeven wrote:
> On Tue, 10 Mar 2009, Phillip Lougher wrote:
> > Stefan Lippers-Hollmann wrote:
> > > This patch seems to break squashfs for me on i386 and amd64.
> > > Test environment is a squashed filesystem image (live CD image, but also
> > > tested manually with a loop mounted iso9660 and loop mounted squashfs;
> > > kernel 2.6.29-rc7-git2). The squashfs image has been created with
> > > squashfs-tools CVS[1] as of today (latest commit 2009-03-03).
> > >
> >
> > Can you send me a filesystem (or link to one) which exhibits this? Zlib is
> > obviously showing unexpected behaviour...
>
> I see the same thing here. I'll send you a test file system by private email.
>
> The patch below fixes it. It seems zlib sometimes does need an additional
> loop ;-)
>
> Note that I expect it may now loop forever in case of file system corruption.
This patch seems to work for me, no further errors while copying files and
no syslog messages.
Regards
Stefan Lippers-Hollmann
--
> Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@...ycom.com>
>
> diff --git a/fs/squashfs/block.c b/fs/squashfs/block.c
> index 321728f..46358dd 100644
> --- a/fs/squashfs/block.c
> +++ b/fs/squashfs/block.c
> @@ -184,15 +184,7 @@ int squashfs_read_data(struct super_block *sb, void **buffer, u64 index,
> offset = 0;
> }
>
> - if (msblk->stream.avail_out == 0) {
> - if (page == pages) {
> - ERROR("zlib_inflate tried to "
> - "decompress too much data, "
> - "expected %d bytes. Zlib "
> - "data probably corrupt\n",
> - srclength);
> - goto release_mutex;
> - }
> + if (msblk->stream.avail_out == 0 && page < pages) {
> msblk->stream.next_out = buffer[page++];
> msblk->stream.avail_out = PAGE_CACHE_SIZE;
> }
>
> With kind regards,
>
> Geert Uytterhoeven
> Software Architect
>
> Sony Techsoft Centre Europe
> The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
>
> Phone: +32 (0)2 700 8453
> Fax: +32 (0)2 700 8622
> E-mail: Geert.Uytterhoeven@...ycom.com
> Internet: http://www.sony-europe.com/
>
> A division of Sony Europe (Belgium) N.V.
> VAT BE 0413.825.160 · RPR Brussels
> Fortis · BIC GEBABEBB · IBAN BE41293037680010
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists