On Thu, Sep 12, 2019 at 07:55:01PM -0400, Zygo Blaxell wrote: > 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. > > Signed-off-by: Zygo Blaxell <ce3g8...@umail.furryterror.org>
Honestly I'd rather we fixed is_power_of_2 to work on 32bit, that way any other users don't get bitten by the same problem. Thanks, Josef