diff options
author | Zygo Blaxell <ce3g8jdj@umail.furryterror.org> | 2019-09-12 19:55:01 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-10-17 13:47:24 -0700 |
commit | 8daddd6c332ada05b2bc5fb2ffb506769e7151b8 (patch) | |
tree | 398a0e4c41b39781ecf4a5e9b959b74d05a090d4 /fs/btrfs/tree-log.c | |
parent | 03fc8cdc5b99a16e0bde44515139efe8053c6772 (diff) |
btrfs: fix balance convert to single on 32-bit host CPUs
commit 7a54789074a54f64addf5b49bf1994f478337a83 upstream.
Currently, the command:
btrfs balance start -dconvert=single,soft .
on a Raspberry Pi produces the following kernel message:
BTRFS error (device mmcblk0p2): balance: invalid convert data profile single
This fails because we use is_power_of_2(unsigned long) to validate
the new data profile, the constant for 'single' profile uses bit 48,
and there are only 32 bits in a long on ARM.
Fix by open-coding the check using u64 variables.
Tested by completing the original balance command on several Raspberry
Pis.
Fixes: 818255feece6 ("btrfs: use common helper instead of open coding a bit test")
CC: stable@vger.kernel.org # 4.20+
Signed-off-by: Zygo Blaxell <ce3g8jdj@umail.furryterror.org>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/btrfs/tree-log.c')
0 files changed, 0 insertions, 0 deletions