diff options
author | Patrik Lundquist <patrik.lundquist@gmail.com> | 2015-07-24 10:35:02 +0200 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2015-08-31 19:25:09 +0200 |
commit | 44de34b14da87096d373f90aa29482812fc3c70c (patch) | |
tree | 53856668abc2cd42ca68f5e6a95656dd32fc615c | |
parent | 8cb5ff857a7799ec2d8b719859c59b9d446075ff (diff) |
btrfs-progs: defrag: fix threshold overflow again
Commit dedb1ebeee847e3c4d71e14d0c1077887630e44a broke commit
96cfbbf0ea9fce7ecaa9e03964474f407f6e76ab.
Casting thresh value greater than (u32)-1 simply truncates bits while
desired value is (u32)-1 for max defrag threshold.
I.e. "btrfs fi defrag -t 4g" is trimmed/truncated to 0
and "-t 5g" to 1073741824.
Also added a missing newline.
Signed-off-by: Patrik Lundquist <patrik.lundquist@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | cmds-filesystem.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/cmds-filesystem.c b/cmds-filesystem.c index 7998add6..bbbd62ce 100644 --- a/cmds-filesystem.c +++ b/cmds-filesystem.c @@ -1172,8 +1172,9 @@ static int cmd_filesystem_defrag(int argc, char **argv) thresh = parse_size(optarg); if (thresh > (u32)-1) { fprintf(stderr, - "WARNING: target extent size %llu too big, trimmed to %u", + "WARNING: target extent size %llu too big, trimmed to %u\n", thresh, (u32)-1); + thresh = (u32)-1; } defrag_global_fancy_ioctl = 1; break; |