lkml.org 
[lkml]   [2016]   [Feb]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.3 154/200] ext4: fix an endianness bug in ext4_encrypted_zeroout()
    Date
    4.3-stable review patch.  If anyone has any objections, please let me know.

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

    From: Al Viro <viro@ZenIV.linux.org.uk>

    commit e2c9e0b28e146c9a3bce21408f3c02e24ac7ac31 upstream.

    ex->ee_block is not host-endian (note that accesses of other fields
    of *ex right next to that line go through the helpers that do proper
    conversion from little-endian to host-endian; it might make sense
    to add similar for ->ee_block to avoid reintroducing that kind of
    bugs...)

    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    fs/ext4/crypto.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/fs/ext4/crypto.c
    +++ b/fs/ext4/crypto.c
    @@ -408,7 +408,7 @@ int ext4_encrypted_zeroout(struct inode
    struct ext4_crypto_ctx *ctx;
    struct page *ciphertext_page = NULL;
    struct bio *bio;
    - ext4_lblk_t lblk = ex->ee_block;
    + ext4_lblk_t lblk = le32_to_cpu(ex->ee_block);
    ext4_fsblk_t pblk = ext4_ext_pblock(ex);
    unsigned int len = ext4_ext_get_actual_len(ex);
    int ret, err = 0;

    \
     
     \ /
      Last update: 2016-02-15 00:41    [W:4.096 / U:0.068 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site