From: Eric Sandeen <sandeen@redhat.com>
To: "Richard W.M. Jones" <rjones@redhat.com>
Cc: Ext4 Developers List <linux-ext4@vger.kernel.org>,
Sami Liedes <sami.liedes@iki.fi>
Subject: Re: Commit c1a1e7fc24d6 causes segfault in ext2fs_new_inode
Date: Wed, 04 Apr 2012 20:56:02 -0700 [thread overview]
Message-ID: <4F7D17D2.40009@redhat.com> (raw)
In-Reply-To: <20120330125726.GA26221@amd.home.annexia.org>
On 3/30/12 5:57 AM, Richard W.M. Jones wrote:
> [I'm tracking this issue here:
> https://bugzilla.redhat.com/show_bug.cgi?id=808421]
>
> febootstrap uses the ext2fs library to construct an ext2 filesystem.
>
> Since we updated to the latest version in git, febootstrap segfaults
> in ext2fs_find_first_zero_generic_bmap (called from ext2fs_new_inode).
> There's a complete stack trace in the bug above.
>
> I'm not claiming that we are calling this library correctly, but,
> you know, "it always worked until now".
Sami, can you take a look at this one? It seems that your commit does
not handle 32-bit bitmaps.
Thanks,
-Eric
> Here is the calling code:
>
> https://github.com/libguestfs/febootstrap/blob/636a80b5a70382f21da47c44a0acd3efa2bc7fcf/helper/ext2.c#L142
>
> git bisect points to this change being the one which causes the
> problem:
>
> c1a1e7fc24d6e37f931bbb8eeb29c90243f0a55d is the first bad commit
> commit c1a1e7fc24d6e37f931bbb8eeb29c90243f0a55d
> Author: Sami Liedes <sami.liedes@iki.fi>
> Date: Sat Mar 10 22:36:12 2012 +0200
>
> libext2fs: Implement ext2fs_find_first_zero_generic_bmap().
>
> This function searches a bitmap for the first zero bit within a range.
> It checks if there is a bitmap backend specific implementation
> available (if the relevant field in bitmap_ops is non-NULL). If not,
> it uses a generic and slow method by repeatedly calling test_bmap() in
> a loop. Also change ext2fs_new_inode() to use this new function.
>
> This change in itself does not result in a large speedup, rather it
> refactors the code in preparation for the introduction of a faster
> find_first_zero() for bitarray based bitmaps.
>
> Signed-off-by: Sami Liedes <sami.liedes@iki.fi>
> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
>
> Rich.
>
prev parent reply other threads:[~2012-04-05 3:56 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-30 12:57 Commit c1a1e7fc24d6 causes segfault in ext2fs_new_inode Richard W.M. Jones
2012-03-30 13:19 ` Richard W.M. Jones
2012-03-30 19:38 ` Eric Sandeen
2012-03-30 22:25 ` Eric Sandeen
2012-04-06 19:14 ` Sami Liedes
2012-04-06 19:19 ` Eric Sandeen
2012-04-06 19:31 ` Eric Sandeen
2012-04-06 19:47 ` Sami Liedes
2012-04-06 19:49 ` Eric Sandeen
2012-04-06 19:22 ` Richard W.M. Jones
2012-04-06 20:06 ` Ted Ts'o
2012-04-06 18:57 ` Ted Ts'o
2012-04-06 18:59 ` [PATCH 1/3] libext2fs: add 32-bit compat code for ext2fs_find_first_zero_generic_bmap() Theodore Ts'o
2012-04-06 18:59 ` [PATCH 2/3] libext2fs: use correct types in ext2fs_find_first_zero_block_bitmap2() Theodore Ts'o
2012-04-06 18:59 ` [PATCH 3/3] libext2fs: improve testing coverage of tst_bitmaps Theodore Ts'o
2012-04-09 16:14 ` [PATCH 1/3] libext2fs: add 32-bit compat code for ext2fs_find_first_zero_generic_bmap() Eric Sandeen
2012-04-05 3:56 ` Eric Sandeen [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=4F7D17D2.40009@redhat.com \
--to=sandeen@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=rjones@redhat.com \
--cc=sami.liedes@iki.fi \
/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.