zfs/raidz: seems like I'm failing with math

Gary Palmer gpalmer at freebsd.org
Sun Oct 16 18:42:58 UTC 2016


On Sun, Oct 16, 2016 at 09:56:10PM +0500, Eugene M. Zheganin wrote:
> Hi.
> 
> FreeBSD 11.0-RC1 r303979, zfs raidz1:
> 
> ===Cut===
> 
> # zpool status gamestop
>    pool: gamestop
>   state: ONLINE
>    scan: none requested
> config:
> 
>          NAME        STATE     READ WRITE CKSUM
>          gamestop    ONLINE       0     0     0
>            raidz1-0  ONLINE       0     0     0
>              da0     ONLINE       0     0     0
>              da1     ONLINE       0     0     0
>              da2     ONLINE       0     0     0
>              da3     ONLINE       0     0     0
>              da4     ONLINE       0     0     0
>              da5     ONLINE       0     0     0
> 
> ===Cut===
> 
> 6 disks 960 Gbs each:
> 
> ===Cut===
> 
> # smartctl -a /dev/da0
> smartctl 6.5 2016-05-07 r4318 [FreeBSD 11.0-RC1 amd64] (local build)
> Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
> 
> === START OF INFORMATION SECTION ===
> Model Family:     Samsung based SSDs
> Device Model:     SAMSUNG MZ7KM960HAHP-00005
> Serial Number:    S2HTNX0H507466
> LU WWN Device Id: 5 002538 c402bdac1
> Firmware Version: GXM1003Q
> User Capacity:    960 197 124 096 bytes [960 GB]

You're confusing disk manufacturer gigabytes with real (power of two)
gigabytes.  The below turns 960 197 124 096 into real gigabytes

% bc
scale = 4
960197124096 / 1024 / 1024 / 1024
894.2532


> Sector Size:      512 bytes logical/physical
> 
> [...]
> 
> ===Cut===
> 
> But:
> 
> ===Cut===
> 
> # zpool list gamestop
> NAME       SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP HEALTH  ALTROOT
> gamestop  5,22T  4,38T   861G         -    24%    83%  1.00x ONLINE  -
> 
> ===Cut===
> 
> Why 5.22T ? If zpool is displaying raw size, it should be 960 x 6 = 5760 
> Gb = 5.65 T. If it's displaying the actual data, then it should be 960 x 
> 5 = 4800 Gb = 4.68 T. 5.22 T is neither of these. I'm stuck, please 
> explain. :)

Take 6 disks, size calculated above, and turn that into power of two TB:

894.2532 * 6 / 1024
5.2397

Close enough to 5.22, especially after ZFS has some overhead for it's
own data structures

Regards,

Gary


More information about the freebsd-stable mailing list