[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20171130151753.24986-1-artem.blagodarenko@gmail.com>
Date: Thu, 30 Nov 2017 18:17:50 +0300
From: Artem Blagodarenko <artem.blagodarenko@...il.com>
To: linux-ext4@...r.kernel.org
Cc: adilger.kernel@...ger.ca
Subject: [PATCH v3 0/3] 64 bit inode counter support
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 third version of the patch set. Changes since v2:
* added patch "Removes static definition of dx_root struct"
* __le32 used for on-disk data structures
* used __u8 type not char
* macroses __EXT4_DIR_REC_LEN and EXT4_DIR_REC_LEN renamed
* added structures to address dirent fields
* removed BUG_ON() execution
* no need to add s_usr_quota_inum_hi and s_grp_quota_inum_hi
* checksum using high part of inode
* fixed bug in size check code
Andreas Dilger (1):
ext4: dirdata feature
Artem Blagodarenko (1):
ext4: Add 64-bit inode number support
Yang Sheng (1):
ext4: Removes static definition of dx_root struct
fs/ext4/dir.c | 21 ++--
fs/ext4/ext4.h | 184 +++++++++++++++++++++++++++++++----
fs/ext4/ialloc.c | 19 ++--
fs/ext4/inline.c | 18 ++--
fs/ext4/inode.c | 5 +
fs/ext4/namei.c | 289 ++++++++++++++++++++++++++++++++++++++-----------------
fs/ext4/resize.c | 8 +-
fs/ext4/super.c | 17 +++-
8 files changed, 423 insertions(+), 138 deletions(-)
--
2.13.6 (Apple Git-96)
Powered by blists - more mailing lists