[Lucid] SRU: Lucid kernel is missing a large number of important ext4 bug fixes
Brad Figg
brad.figg at canonical.com
Wed Jun 23 14:20:12 UTC 2010
On 06/23/2010 12:12 AM, Stefan Bader wrote:
> Attached are my notes. There were some patches that are really hard to estimate
> their impact. On the other hand also quite a few of them are limited to fix
> issues on non-default use modes.
>
> I would vote for having a test kernel and getting the xfstest suite (usable for
> ext4 as well) ready and then split up test runs between us: I guess one 64bit,
> one 32bit and probably 32bit userspace with 64bit kernel.
>
> If we feel confident with that, we would proceed with adding the patches to the
> next proposed.
>
> I'd ACK when I done my share of test.
>
> -Stefan
>
> On 06/22/2010 10:42 PM, Brad Figg wrote:
>> BugLink: http://bugs.launchpad.net/bugs/5088069
>>
>> SRU Justification
>>
>> Impact:
>> The following patches are heading to the stable maintainers tree and will eventually get pulled into
>> the
>> Lucid tree. The earlier we can get these in the fewer issues our users will encounter. We will be getting
>> these through stable-tree updates, we would just be pulling them in a little earlier.
>>
>> The following patches should really be applied to the Lucid 2.6.32-22.33 kernel:
>>
>> ftp://ftp.kernel.org/pub/linux/kernel/people/tytso/ext4-patches/ext4-patches-for-2.6.32.11--14.tar.gz
>>
>> There is a git tree you may find useful here:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git lucid-2.6.32-ext4
>>
>> It fixes a very large number of ext4 bugs, including (but not limited to):
>>
>> http://bugzilla.kernel.org/show_bug.cgi?id=14286
>> http://bugzilla.kernel.org/show_bug.cgi?id=14936
>> http://bugzilla.kernel.org/show_bug.cgi?id=15420
>> http://bugzilla.kernel.org/show_bug.cgi?id=15579
>> http://bugzilla.kernel.org/show_bug.cgi?id=13549
>> http://bugzilla.kernel.org/show_bug.cgi?id=15742
>> http://bugzilla.kernel.org/show_bug.cgi?id=15768
>> http://bugzilla.kernel.org/show_bug.cgi?id=15792
>> http://bugzilla.kernel.org/show_bug.cgi?id=15827
>>
>> This patch has been submitted upstream, but I'm not sure if Greg K-H will be doing another 2.6.32.y kernel release.
>>
>> Testing:
>> TBD
>>
>>
>> The following changes since commit 59152141a98f95f71e8dcc505c226ceaf1c3abc7:
>> Yin Kangkai (1):
>> jbd: jbd-debug and jbd2-debug should be writable
>>
>> are available in the git repository at:
>>
>> git://kernel.ubuntu.com/bradf/ubuntu-lucid lp588069
>>
>> Akira Fujita (3):
>> ext4: Fix insertion point of extent in mext_insert_across_blocks()
>> ext4: Fix the NULL reference in double_down_write_data_sem()
>> ext4: Code cleanup for EXT4_IOC_MOVE_EXT ioctl
>>
>> Aneesh Kumar K.V (4):
>> ext4: Ensure zeroout blocks have no dirty metadata
>> ext4: Handle -EDQUOT error on write
>> ext4: Fix quota accounting error with fallocate
>> ext4: Drop EXT4_GET_BLOCKS_UPDATE_RESERVE_SPACE flag
>>
>> Ben Hutchings (2):
>> ext4: Conditionally define compat ioctl numbers
>> ext4: Fix compat EXT4_IOC_ADD_GROUP
>>
>> Christian Borntraeger (1):
>> ext4: allow defrag (EXT4_IOC_MOVE_EXT) in 32bit compat mode
>>
>> Curt Wohlgemuth (5):
>> ext4: Fix BUG_ON at fs/buffer.c:652 in no journal mode
>> ext4: Fix possible lost inode write in no journal mode
>> ext4: Fix buffer head leaks after calls to ext4_get_inode_loc()
>> ext4: Remove extraneous newlines in ext4_msg() calls
>> ext4: check for a good block group before loading buddy pages
>>
>> Dmitry Monakhov (10):
>> ext4: fix error handling in migrate
>> ext4: explicitly remove inode from orphan list after failed direct io
>> ext4: Handle non empty on-disk orphan link
>> ext4: check missed return value in ext4_sync_file()
>> ext4: fix quota accounting in case of fallocate
>> ext4: Do not zero out uninitialized extents beyond i_size
>> ext4: clean up inode bitmaps manipulation in ext4_free_inode
>> ext4: init statistics after journal recovery
>> ext4: Use bitops to read/modify i_flags in struct ext4_inode_info
>> ext4: restart ext4_ext_remove_space() after transaction restart
>>
>> Eric Sandeen (5):
>> ext4: Fixed inode allocator to correctly track a flex_bg's used_dirs
>> ext4: check s_log_groups_per_flex in online resize code
>> ext4: don't return to userspace after freezing the fs with a mutex held
>> ext4: stop issuing discards if not supported by device
>> ext4: don't scan/accumulate more pages than mballoc will allocate
>>
>> Frank Mayhar (1):
>> ext4: Make fsync sync new parent directories in no-journal mode
>>
>> Jan Kara (2):
>> ext4: Fix estimate of # of blocks needed to write indirect-mapped files
>> ext4: Show journal_checksum option
>>
>> Jiaying Zhang (1):
>> ext4: Add flag to files with blocks intentionally past EOF
>>
>> Jing Zhang (3):
>> ext4: fix memory leaks in error path handling of ext4_ext_zeroout()
>> ext4: Remove unnecessary call to ext4_get_group_desc() in mballoc
>> ext4: rename ext4_mb_release_desc() to ext4_mb_unload_buddy()
>>
>> Julia Lawall (1):
>> ext4: Eliminate potential double free on error path
>>
>> Nikanth Karthikesan (1):
>> ext4: Prevent creation of files larger than RLIMIT_FSIZE using fallocate
>>
>> Richard Kennedy (1):
>> ext4: return correct wbc.nr_to_write in ext4_da_writepages
>>
>> Surbhi Palande (1):
>> ext4: replace BUG() with return -EIO in ext4_ext_get_blocks
>>
>> Tao Ma (1):
>> ext4: Fix fencepost error in chosing choosing group vs file preallocation.
>>
>> Theodore Ts'o (8):
>> ext4, jbd2: Add barriers for file systems with exernal journals
>> ext4: Patch up how we claim metadata blocks for quota purposes
>> ext4: Fix accounting of reserved metadata blocks
>> ext4: Calculate metadata requirements more accurately
>> ext4: Use bitops to read/modify EXT4_I(inode)->i_state
>> ext4: Issue the discard operation *before* releasing the blocks to be reused
>> ext4: Avoid crashing on NULL ptr dereference on a filesystem error
>> ext4: Clear the EXT4_EOFBLOCKS_FL flag only when warranted
>>
>> Toshiyuki Okajima (1):
>> ext4: make "offset" consistent in ext4_check_dir_entry()
>>
>> fs/ext4/dir.c | 12 +-
>> fs/ext4/ext4.h | 157 ++++++++++++++++++---
>> fs/ext4/ext4_extents.h | 3 +-
>> fs/ext4/ext4_jbd2.c | 2 +-
>> fs/ext4/ext4_jbd2.h | 6 +-
>> fs/ext4/extents.c | 251 ++++++++++++++++++++++++++--------
>> fs/ext4/file.c | 6 +-
>> fs/ext4/fsync.c | 49 ++++++-
>> fs/ext4/ialloc.c | 98 ++++++-------
>> fs/ext4/inode.c | 365 ++++++++++++++++++++++++++++--------------------
>> fs/ext4/ioctl.c | 37 +++++-
>> fs/ext4/mballoc.c | 132 ++++++++++++------
>> fs/ext4/migrate.c | 37 +++---
>> fs/ext4/move_extent.c | 28 ++--
>> fs/ext4/namei.c | 24 +++-
>> fs/ext4/resize.c | 3 +-
>> fs/ext4/super.c | 67 +++++-----
>> fs/ext4/xattr.c | 28 ++--
>> fs/jbd2/checkpoint.c | 15 ++
>> fs/jbd2/commit.c | 19 ++-
>> include/linux/jbd2.h | 1 +
>> 21 files changed, 905 insertions(+), 435 deletions(-)
>>
>
I now have test kernels available in my ppa (https://launchpad.net/~brad-figg/+archive/ppa).
--
Brad Figg brad.figg at canonical.com http://www.canonical.com
More information about the kernel-team
mailing list