]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
client: use 4MB f_bsize and f_frsize for statfs
authorSage Weil <sage@inktank.com>
Fri, 22 Feb 2013 23:15:27 +0000 (15:15 -0800)
committerSage Weil <sage@inktank.com>
Thu, 21 Mar 2013 18:52:39 +0000 (11:52 -0700)
commit7e7ea8266ee45d96863e1edc5a567dcc2977680c
treea91bf513805da73c5117c2dd1c544bd9c2ac09bf
parent66dca7730006dffbce12e6b27016ea5469b7691b
client: use 4MB f_bsize and f_frsize for statfs

Old stat(1) reports:

  Block size: 1048576    Fundamental block size: 1048576

and the df(1) arithmetic works out.  New stat(1) reports:

  Block size: 1048576    Fundamental block size: 4096

which is what we are shoving into statvfs, but we have the b_size and
fr_size arithmetic swapped.  However, doing the *correct* reporting would
then break the old stat by making both sizes appear to be 4KB (or
whatever).

Sidestep the issue by making *both* values 4MB.. which is both large enough
to report large FS sizes, and also the default stripe size and thus a
"reasonable" value to report for a block size.

Perhaps in the future, when we no longer care about old userland, we can
report the page size for f_bsize, which is probably the "most correct"
thing to do.

Fixes: #3794. See also #3793.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
(cherry picked from commit 7c94083643891c9d66a117352f312b268bdb1135)
src/client/Client.cc