From: Phillip Lougher <phillip@lougher.demon.co.uk>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Jesper Juhl <jj@chaosbits.net>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] SquashFS, XZ: Don't use uninitialized variable in squashfs_xz_uncompress
Date: Mon, 24 Jan 2011 23:30:54 +0000 [thread overview]
Message-ID: <4D3E0BAE.6090202@lougher.demon.co.uk> (raw)
In-Reply-To: <20110124144353.c04c77b4.akpm@linux-foundation.org>
On 24/01/11 22:43, Andrew Morton wrote:
> On Thu, 20 Jan 2011 21:53:23 +0100 (CET)
> Jesper Juhl<jj@chaosbits.net> wrote:
>
>> In fs/squashfs/xz_wrapper.c::squashfs_xz_uncompress() we have this code:
>>
>> enum xz_ret xz_err;
>> ...
>> do {
>> if (stream->buf.in_pos == stream->buf.in_size&& k< b) {
>> ... [nothing that assigns to 'xz_err'] ...
>> if (avail == 0) {
>> offset = 0;
>> put_bh(bh[k++]);
>> continue;
>
> hm, maybe. The handling of the `avail == 0' case looks odd. It sits
> there in a loop doing wait_on_buffer() against buffers which it will
> never use and possible reporting -EIO for a buffer which it didn't use,
> which seems bogus.
Hi Andrew,
I'm just about to send out a patch that fixes this uninitialised variable
bug by way of getting rid of that if (avail == 0) case.
The avail == 0 case is a workaround for the fact that the caller code
can occasionally pass a buffer head that has already been
consumed (read offset into buffer head is at the end of the buffer).
Phillip
prev parent reply other threads:[~2011-01-24 23:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-20 20:53 [PATCH] SquashFS, XZ: Don't use uninitialized variable in squashfs_xz_uncompress Jesper Juhl
2011-01-24 22:43 ` Andrew Morton
2011-01-24 23:30 ` Phillip Lougher [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D3E0BAE.6090202@lougher.demon.co.uk \
--to=phillip@lougher.demon.co.uk \
--cc=akpm@linux-foundation.org \
--cc=jj@chaosbits.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.