lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 13 Dec 2017 16:46:30 -0700
From:   Andreas Dilger <adilger@...ger.ca>
To:     Artem Blagodarenko <artem.blagodarenko@...il.com>
Cc:     linux-ext4 <linux-ext4@...r.kernel.org>,
        Wang Shilong <wshilong@....com>
Subject: Re: [PATCH] quota: swapping s_prj_quota_inum superblock field


> On Dec 13, 2017, at 5:20 AM, Artem Blagodarenko <artem.blagodarenko@...il.com> wrote:
> 
> ext2fs_swap_super() swaps s_usr_quota_inum and
> s_grp_quota_inum fields but not s_prj_quota_inum.
> 
> This patch adds s_prj_quota_inum swapping.
> 
> Lustre-bug: https://jira.hpdd.intel.com/browse/LU-9309
> Signed-off-by: Artem Blagodarenko <artem.blagodarenko@...il.com>

I was going to give this a Reviewed-by: but two things bothered me:
- the swabbing should be done in field declaration order, so that it
  is easier to see that all of the fields have been handled properly
- looking to see what other fields might not have proper swabbing, it
  turns out there are several other fields that are not being swabbed:

  s_raid_stride, s_raid_stripe_width, s_{first,last}_error_*, s_lpf_ino

So instead of this one-line fix I'm going to push a patch that fixes all
of these in a consistent manner, and adds some build-time checking to
ext2fs_swap_super(), ext2fs_swap_group_desc2() and ext2fs_swap_inode_large()
to try and catch future cases where we are not adding swabbing.

Cheers, Andreas

> ---
> lib/ext2fs/swapfs.c | 1 +
> 1 file changed, 1 insertion(+)
> 
> diff --git a/lib/ext2fs/swapfs.c b/lib/ext2fs/swapfs.c
> index b9d8f557..c1da8509 100644
> --- a/lib/ext2fs/swapfs.c
> +++ b/lib/ext2fs/swapfs.c
> @@ -79,6 +79,7 @@ void ext2fs_swap_super(struct ext2_super_block * sb)
> 	sb->s_snapshot_r_blocks_count =
> 		ext2fs_swab64(sb->s_snapshot_r_blocks_count);
> 	sb->s_snapshot_list = ext2fs_swab32(sb->s_snapshot_list);
> +	sb->s_prj_quota_inum = ext2fs_swab32(sb->s_prj_quota_inum);
> 	sb->s_usr_quota_inum = ext2fs_swab32(sb->s_usr_quota_inum);
> 	sb->s_grp_quota_inum = ext2fs_swab32(sb->s_grp_quota_inum);
> 	sb->s_overhead_blocks = ext2fs_swab32(sb->s_overhead_blocks);
> --
> 2.14.3 (Apple Git-98)
> 


Cheers, Andreas






Download attachment "signature.asc" of type "application/pgp-signature" (196 bytes)

Powered by blists - more mailing lists