From: Artem Blagodarenko <artem.blagodarenko@gmail.com>
To: linux-ext4@vger.kernel.org
Cc: adilger.kernel@dilger.ca
Subject: [PATCH v4 0/4] 64 bit inode counter support
Date: Fri, 2 Feb 2018 12:41:32 +0300 [thread overview]
Message-ID: <20180202094136.13032-1-artem.blagodarenko@gmail.com> (raw)
With current hardware clusters faced with the trouble of
creating enough inodes on partitions. Lustre has 0-size
files to store some information about files. Current
MDS disk sizes allow to store large amount of such files, but
EXT4 limits this number to ~4 billions.
Lustre FS has features like DNE to distribute metadata over many targets
(disks), but disks are used not effectively. It would be great to have
ability to store more then ~4 billions inodes on one EXT4 file system.
This patches add 1) dirdata feature, that allow to store additional
data in direntry 2) code that uses dirdata to store high bits of
64bit inode number.
This is 4th version of the patch set. Changes since v3:
* ext4_warning_inode() is used to print messages
* DIRENT_INODE_LEN size is 4 bytes
* using structures to access dirdata fields
* some code pieces moved to appropriate patches
* added high part for s_last_orphan, s_first_error_ino, and s_last_error_ino
fields
* ext4_dirent_inohi changed to ext4_dirent_inode64
* s_inode_goal become 64 bit
* __u64 goal in ext4_ext_migrate()
* added functions set_inode() and get_inode()
(in separate patch 3/4)
* 64 bit support in htree_inlinedir_to_tree(), ext4_try_create_inline_dir() and
ext4_add_dirent_to_inline()
* skip the NUL separator after the name
* high part of inode number is accessed only if EXT4_DIRENT_INODE64 enabled
* 64bit support for ext4_rename_dir_prepare(), ext4_rename_dir_finish(),
ext4_rename_delete(), ext4_cross_rename(), ext4_empty_dir(), ext4_rmdir(),
ext4_rename(), ext4_unlink(), and ext4_setent()
* heleper functions for access to high part of superblock fields
based on macroses
* high part of inode number is copied to prevent align problems
* style fixes
Andreas Dilger (1):
ext4: dirdata feature
Artem Blagodarenko (2):
ext4: Add helper functions to access inode numbers
ext4: Add 64-bit inode number support
Yang Sheng (1):
ext4: Removes static definition of dx_root struct
fs/ext4/dir.c | 20 ++-
fs/ext4/ext4.h | 182 +++++++++++++++++++++----
fs/ext4/ialloc.c | 19 ++-
fs/ext4/inline.c | 47 ++++---
fs/ext4/inode.c | 5 +
fs/ext4/migrate.c | 2 +-
fs/ext4/namei.c | 390 ++++++++++++++++++++++++++++++++++++++----------------
fs/ext4/resize.c | 8 +-
fs/ext4/super.c | 54 ++++----
9 files changed, 528 insertions(+), 199 deletions(-)
--
2.14.3 (Apple Git-98)
next reply other threads:[~2018-02-02 9:41 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-02 9:41 Artem Blagodarenko [this message]
2018-02-02 9:41 ` [PATCH v4 1/4] ext4: Removes static definition of dx_root struct Artem Blagodarenko
2018-02-02 9:41 ` [PATCH v4 2/4] ext4: dirdata feature Artem Blagodarenko
2018-02-02 9:41 ` [PATCH v4 3/4] ext4: Add helper functions to access inode numbers Artem Blagodarenko
2018-02-02 23:36 ` Andreas Dilger
2018-02-02 9:41 ` [PATCH v4 4/4] ext4: Add 64-bit inode number support Artem Blagodarenko
2018-02-18 2:18 ` Theodore Ts'o
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=20180202094136.13032-1-artem.blagodarenko@gmail.com \
--to=artem.blagodarenko@gmail.com \
--cc=adilger.kernel@dilger.ca \
--cc=linux-ext4@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).