linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* btrfs replace status over 100%
@ 2016-03-16 14:07 Patrick Schmid
  0 siblings, 0 replies; only message in thread
From: Patrick Schmid @ 2016-03-16 14:07 UTC (permalink / raw)
  To: Btrfs BTRFS

Hi all

I had to replace an 10TiB disk. The replacing works well, but the status 
shows me values over 100%!

   btrfs replace status -1 /export/backup/group/dphys
   209.5% done, 0 write errs, 0 uncorr. read errs

I use btrfs-progs version 4.0.1 (master) from
git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git

and im running a 4.5.0-rc4 kernel from
https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git

I had done some calculations and the deviation of the status value is 
around factor 4.

This mean 209.5% from the replace status is in real live only around 52.4%.

After source code digging, i stuck on the following kernel code lines:

fs/btrfs/dev-replace.c:674

case BTRFS_IOCTL_DEV_REPLACE_STATE_SUSPENDED:
   srcdev = dev_replace->srcdev;
   args->status.progress_1000 = div_u64(dev_replace->cursor_left,
	div_u64(btrfs_device_get_total_bytes(srcdev), 1000));

is there a possibility that "dev_replace->cursor_left" and 
"btrfs_device_get_total_bytes(srcdev)" dont have the same unit?

or I'm totally wrong?

Thanks Patrick
-- 
Patrick Schmid  <schmid@phys.ethz.ch>     support: +41 44 633 2668
IT Services Group, HPT H 8                voice:   +41 44 633 3997
Departement Physik, ETH Zurich
CH-8093 Zurich, Switzerland

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-03-16 14:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-16 14:07 btrfs replace status over 100% Patrick Schmid

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).