All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Alexander Tsvetkov <alexander.tsvetkov@oracle.com>
Cc: xfs@oss.sgi.com
Subject: Re: maxpct option for small xfs filesystems
Date: Tue, 27 Jan 2015 09:37:15 +1100	[thread overview]
Message-ID: <20150126223715.GA7621@dastard> (raw)
In-Reply-To: <54C667F3.8040303@oracle.com>

On Mon, Jan 26, 2015 at 07:14:43PM +0300, Alexander Tsvetkov wrote:
> Hello,
> 
> I'm trying to understand the expected behaviour of "maxpct" option
> in case of small xfs filesystem
> comparing the maximum percentage defined for this option with the
> percentage of actually allocated
> inodes in filesystem, but the result of prepared test case doesn't
> correspond to the expectations:
> 
> [root@fedora ~]#mkfs.xfs -f -d size=16m -i maxpct=1 /dev/sdb2

On 3.19-rc5, immediately after mount:

# df -i /mnt/scratch
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/ram1         640     3   637    1% /mnt/scratch

Which indicates that imaxpct=1 is being calculated correctly, before
we even look at whether it is being enforced correctly or not.

So, what kernel version?

http://xfs.org/index.php/XFS_FAQ#Q:_What_information_should_I_include_when_reporting_a_problem.3F

> [root@fedora ~]# for i in {0..100000}; do str=$(mktemp
> --tmpdir=/mnt/scratch tmp.XXXXXXXXXX); echo $str; done

Which is a complex (and very slow!) way of doing:

# for i in {0..100000}; do echo > /mnt/scratch/$i ; done 2> /dev/null

> filesystem is full with created files:
> 
> [root@fedora ~]# df -Th | grep scratch
> /dev/sdb2      xfs        13M   13M  148K  99% /mnt/scratch

# df -Th /mnt/scratch
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/ram1      xfs    13M  1.1M   12M   9% /mnt/scratch
# df -i /mnt/scratch
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/ram1         640   640     0  100% /mnt/scratch

> and from the number of actually created inodes:
> 
> [root@fedora ~]# xfs_db -c "blockget -n" -c "ncheck" /dev/sdb2 | wc -l
> 40512

That's a directory structure entry count, equivalent to 'find
/mnt/scratch | wc -l', not an allocated inode count which is what
'df -i' reports. Even so, on 3.19-rc5:

# xfs_db -c "blockget -n" -c "ncheck" /dev/ram1 | wc -l
637

which matches what 'df -i' tells us about allocated inodes and hence
imaxpct is working as expected.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2015-01-26 22:37 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-26 16:14 maxpct option for small xfs filesystems Alexander Tsvetkov
2015-01-26 22:37 ` Dave Chinner [this message]
2015-01-27 16:23   ` Alexander Tsvetkov
2015-01-27 16:31     ` Eric Sandeen
2015-01-27 19:15       ` Eric Sandeen
2015-01-28 10:41       ` Alexander Tsvetkov
2015-01-28 15:44         ` Eric Sandeen
2015-01-28 18:05         ` Eric Sandeen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150126223715.GA7621@dastard \
    --to=david@fromorbit.com \
    --cc=alexander.tsvetkov@oracle.com \
    --cc=xfs@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.