All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Sandeen <sandeen@sandeen.net>
To: Su Yue <damenly.su@gmail.com>, linux-xfs@vger.kernel.org
Subject: Re: Question about inode64
Date: Thu, 10 May 2018 16:20:01 -0500	[thread overview]
Message-ID: <d7e616a7-9978-939a-2056-9846aadf20ef@sandeen.net> (raw)
In-Reply-To: <CABnRu57R+xakqCPmhM7bjLoAfLAAEuoQDtoU9F9t6CxeNOaPJg@mail.gmail.com>

On 5/10/18 12:31 PM, Su Yue wrote:
> Hi, XFS developers
> 
> Recently, I was told that some 32bit applications don't work
> on large XFS filesystems. And it is caused by ino overflow in syscalls.
> 
> If I don't misunderstand libxfs/xfs_format, XFS' absolute inode number
> consists of agno_log
> -agblklog-inopblog bits.
> So significative bits = ROUND(log2(Disk size / AG size)) + ROUND(log2(AG
> size / BLK size)) + ROUND(log2(BLK size / inode size)). Right?

> Does it mean that it's feasible to avoid ino overflow by control of disk
> size, AG size, block size, inode size when mkfs even the disk will be mount
> with option inode64.

Yes, inode number is an encoded disk location, and the encoding depends
on various other bits of filesystem geometry.

Note that "inode64" only means that it will /allow/ some inodes to exceed
32 bits, it does not mean that every inode number /will/ be > 32 bits.

But most people don't want to constrain their filesystem geometry around
inode number sizing; if you require 32-bit inodes, just use the inode32 mount
option.

Or better yet, fix the application.  :)

-Eric

> Thanks,
> Su

  reply	other threads:[~2018-05-10 21:20 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-10 17:31 Question about inode64 Su Yue
2018-05-10 21:20 ` Eric Sandeen [this message]
2018-05-11  1:48   ` Su Yue

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=d7e616a7-9978-939a-2056-9846aadf20ef@sandeen.net \
    --to=sandeen@sandeen.net \
    --cc=damenly.su@gmail.com \
    --cc=linux-xfs@vger.kernel.org \
    /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.