[Ocfs2-tools-commits] branch, master, updated. ocfs2-tools-1.4.0-348-g61a8db5

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Thu Jul 30 01:28:47 PDT 2009


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Tools to manage the ocfs2 filesystem.".

The branch, master has been updated
       via  61a8db53f31791fd09a717bceb5b860a58c7291a (commit)
      from  4d0cef9c49f2beb0bd0178c492cd43e2943b25ed (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 61a8db53f31791fd09a717bceb5b860a58c7291a
Author: Joel Becker <joel.becker at oracle.com>
Date:   Wed Jun 3 10:54:19 2009 -0700

    libocfs2: Prevent endian swapping from scribbling over memory.
    
    Some ocfs2 disk structures, such as our btree extent lists, are variable
    in size.  They live inside another disk structure, and one of their
    fields describes how big they are.  When we read the structure into RAM
    and swap it to the local CPU, we rely on that field to make sure we only
    swap what is necessary.
    
    However, if that field gets corrupted, our endian swapping code will
    happily keep scribbling past the end of the block buffer until it his
    the corrupted limit or segfaults.  If you're lucky, it segfaults.
    
    This change modifies all the impacted swapping functions.  They now take
    the ocfs2_filesys as an argument so that they know the blocksize.  A new
    function, ocfs2_swap_barrier(), is introduced.  It uses the
    ocfs2_filesys and the current location in the block buffer to determine
    when the swapping code is about to walk off the end.
    
    Some of our list structures can live inside multiple containing
    blocks.  Those swap functions require an additional argument, the
    address of the containing object.  That way, ocfs2_swap_barrier() knows
    what address to start at.
    
    This is ocfs2 bugzilla #1109.
    
    Signed-off-by: Joel Becker <joel.becker at oracle.com>
    Signed-off-by: Tao Ma <tao.ma at oracle.com>

-----------------------------------------------------------------------

Summary of changes:
 debugfs.ocfs2/dump.c             |    6 +-
 debugfs.ocfs2/find_block_inode.c |    2 +-
 extras/find_dup_extents.c        |    2 +-
 fsck.ocfs2/pass1.c               |    2 +-
 include/ocfs2/ocfs2.h            |   57 ++++++++++++++---
 libocfs2/extents.c               |   31 ++++++---
 libocfs2/inode.c                 |   55 +++++++++++-----
 libocfs2/openfs.c                |    4 +-
 libocfs2/xattr.c                 |  130 ++++++++++++++++++++++++++++---------
 mkfs.ocfs2/mkfs.c                |   13 +++-
 tunefs.ocfs2/libocfs2ne.c        |    2 +-
 11 files changed, 223 insertions(+), 81 deletions(-)


hooks/post-receive
-- 
Tools to manage the ocfs2 filesystem.



More information about the Ocfs2-tools-commits mailing list