All of lore.kernel.org
 help / color / mirror / Atom feed
* statfs b_avail & b_free different if the filesystem is mounted readonly
@ 2018-01-08  8:44 Richard W.M. Jones
  2018-01-08 11:43 ` Dave Chinner
  0 siblings, 1 reply; 3+ messages in thread
From: Richard W.M. Jones @ 2018-01-08  8:44 UTC (permalink / raw)
  To: linux-xfs

We had a question[1] posed by a libguestfs user who wondered why the
output of ‘virt-df’ and ‘df’ differ for an XFS filesystem.  After
looking into the details it turns out that the statfs(2) system call
gives slightly different answers if the filesystem is mounted
read-write vs read-only.

  ><rescue> mount /dev/sda1 /sysroot
  ><rescue> stat -f /sysroot
    File: "/sysroot"
      ID: 80100000000 Namelen: 255     Type: xfs
  Block size: 4096       Fundamental block size: 4096
  Blocks: Total: 24713      Free: 23347      Available: 23347
  Inodes: Total: 51136      Free: 51133

vs:

  ><rescue> mount -o ro /dev/sda1 /sysroot
  ><rescue> stat -f /sysroot
    File: "/sysroot"
      ID: 80100000000 Namelen: 255     Type: xfs
  Block size: 4096       Fundamental block size: 4096
  Blocks: Total: 24713      Free: 24653      Available: 24653
  Inodes: Total: 51136      Free: 51133

‘virt-df’ uses ‘-o ro’ and in the ‘df’ case the user had the
filesystem mounted read-write, hence different results.

I looked into the kernel code and it's all pretty complicated.  I
couldn't see exactly where this difference could come from.

My questions are: Is there a reason for this difference, and is one of
the answers more correct than the other?

Rich.

[1] https://www.redhat.com/archives/libguestfs/2018-January/msg00002.html

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.  http://libguestfs.org

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-01-08 12:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-08  8:44 statfs b_avail & b_free different if the filesystem is mounted readonly Richard W.M. Jones
2018-01-08 11:43 ` Dave Chinner
2018-01-08 12:06   ` Richard W.M. Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.