From: Zheng Liu <gnehzuil.liu@gmail.com>
To: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: linux-ext4@vger.kernel.org, Theodore Ts'o <tytso@mit.edu>,
Zheng Liu <wenqing.lz@taobao.com>
Subject: Re: [PATCH v3 00/30] e2fsprogs: inline data refinement patch set
Date: Sat, 7 Dec 2013 11:43:44 +0800 [thread overview]
Message-ID: <20131207034344.GA13745@gmail.com> (raw)
In-Reply-To: <20131207015321.GC10143@birch.djwong.org>
On Fri, Dec 06, 2013 at 05:53:21PM -0800, Darrick J. Wong wrote:
> On Fri, Dec 06, 2013 at 05:57:47PM +0800, Zheng Liu wrote:
> > Hi all,
> >
> > This is the third version of inline data patch set for e2fsprogs. In
> > this version, I made most changes according to Darrick's comments. As
> > always any comment or suggestion are welcome.
> >
> > Ted, patch 01 ~ 08 are taken from Darrick's patchbomb. I don't touch
> > them. Please let me know if I can do something for your review.
>
> As soon as the last regression tests finish I will blast this out. Probably
> tomorrow morning.
Great!
>
> > Darrick, I don't pick up your patch that tries to handle _DIR_NO_SPACE
> > error in ext2fs_link() because after applied that path some tests won't
> > pass. So I prefer to put this problem into TODO list.
>
> That patch turned out to be a disaster so I kicked it out of my patchbomb set.
> I'll ... work on it later.
Yes, that still needs some more works.
>
> (Also, I probably won't get to reviewing this iteration for a couple of
> days...)
Never mind. I really appreciate your comments. :-)
Thanks,
- Zheng
>
> --D
> >
> > changelog:
> > v3:
> > * Check inline_data feature in extended attribute API [patch 09]
> > * Define a new interface (ext2fs_dirent_swab_in2/out2) [patch 10] for
> > inline data and use them in ext2fs_inline_data_dir_iterate()
> > [patch 11, 14]
> > * Define a new flag (BLOCK_INLINE_DATA_CHANGED) to reflect that inline
> > data has been changed [patch 17]
> > * Use ext2fs_bmap2() in ext2fs_inline_data_expand() [patch 17]
> > * Return EXT2_ET_INLINE_DATA_NO_BLOCK in ext2fs_bmap2() [patch 17]
> > * Refactor out the code of ext2fs_inline_data_expand() [patch 19]
> > * Remove useless variable 'start' [patch 19]
> > * Typo fixes [patch 21,22]
> > * Turn off inline_data feature in tune2fs [patch 22]
> > * Change type from 'int' to 'unsigned int' for cache_size [patch 29]
> >
> > v2:
> > * Rebase against e2fsprogs/next branch
> > * Based against darrick's extended attribute API
> > * Remove 'libext2fs: add INLINE_DATA into EXT2_LIB_SOFTSUPP_INCOMPAT'
> > patch that has been applied
> > * Refine the interface of inline data. Now no any interface is
> > exported to outside caller. All interfaces are only exported
> > for developers
> > * Refactor ext2fs_inline_data_dir_iterate() so that it can call
> > ext2fs_process_dir_block directly
> > * Fix big-endian problem in handle parent inode in i_block
> > * Remove ext2fs_inode_has_inline_data() interface
> > * Export inode cache creation interface for unit test
> > * Coding style fixes
> > * Bug fixes
> >
> > v1:
> > * Revise the interfaces of liext2fs.
> >
> > * Implement ext2fs_punch_inline_data in lib/ext2fs/punch.c. Now if you
> > want to truncate an inode with inline data, you need to call
> > ext2fs_punch(), and it will handle inline data.
> >
> > * Remove ext2fs_inline_data_dirsearch() function. Now we don't support
> > dirsearch command for an inode with inline data in debugfs.
> >
> > * Ext2fs_mkdir() refinement. Now if we want to create a directory with
> > inline data, we just need to call ext2fs_mkdir(). This function will
> > try to create a new directory with inline data if inline_data feature
> > is enabled.
> >
> > * Fix big-endian bug in some functions. When ext2fs_read_inode() tries
> > to read an inode into memory, it will handle big-endian by itself.
> > Thus, we don't need to handle it manually.
> >
> > * Fix a bug in e2fsck/pass3. When we try to expand a 'lost+found' dir,
> > we don't need to handle inline data because this dir shouldn't have
> > this flag.
> >
> > Regards,
> > - Zheng
> >
> > Darrick J. Wong (8):
> > libext2fs: support modifying arbitrary extended attributes
> > libext2fs: various tweaks to the xattr editor APIs
> > libext2fs: extend xattr api to query number of attrs
> > libext2fs: fix memory leaks in extended attribute code
> > libext2fs: fix block leak when releasing xattr block
> > libext2fs: remove redundant code
> > libext2fs: free key/value pairs before reading
> > debugfs: dump all extended attributes
> >
> > Zheng Liu (22):
> > libext2fs: check inline_data in ext2fs_xattrs_read/write
> > libext2fs: define new dirent_swab interfaces for inline data
> > libext2fs: handle inline data in dir iterator function
> > libext2fs: handle inline_data in block iterator function
> > debugfs: make stat command support inline data
> > debugfs: make expand command support inline data
> > debugfs: make mkdir command support inline data
> > debugfs: make lsdel command support inline data
> > debugfs: handle inline_data feature in bmap command
> > debugfs: handle inline data feature in punch command
> > libext2fs: handle inline data in read/write function
> > libext2fs: add inline_data feature into EXT2_LIB_FEATURE_INCOMPAT_SUPP
> > mke2fs: add inline_data support in mke2fs
> > tune2fs: add inline_data feature in tune2fs
> > e2fsck: add problem descriptions and check inline data feature
> > e2fsck: check inline_data in pass1
> > e2fsck: check inline_data in pass2
> > e2fsck: check inline_data in pass3
> > tests: change result in f_bad_disconnected_inode
> > mke2fs: enable inline_data feature on ext4dev filesystem
> > libext2fs: export inode cahce creation function
> > libext2fs: add a unit test for inline data
> >
> > debugfs/debugfs.c | 104 ++--
> > debugfs/filefrag.c | 12 +-
> > debugfs/lsdel.c | 20 +-
> > e2fsck/pass1.c | 84 ++-
> > e2fsck/pass2.c | 128 ++++-
> > e2fsck/pass3.c | 12 +
> > e2fsck/problem.c | 14 +
> > e2fsck/problem.h | 10 +
> > e2fsck/rehash.c | 2 +
> > lib/ext2fs/Makefile.in | 16 +-
> > lib/ext2fs/Makefile.pq | 1 +
> > lib/ext2fs/bmap.c | 7 +
> > lib/ext2fs/dblist_dir.c | 16 +-
> > lib/ext2fs/dir_iterate.c | 62 ++-
> > lib/ext2fs/expanddir.c | 2 +
> > lib/ext2fs/ext2_err.et.in | 27 +
> > lib/ext2fs/ext2_fs.h | 10 +
> > lib/ext2fs/ext2fs.h | 48 +-
> > lib/ext2fs/ext2fsP.h | 24 +-
> > lib/ext2fs/ext_attr.c | 856 +++++++++++++++++++++++++++++++
> > lib/ext2fs/fileio.c | 106 ++++
> > lib/ext2fs/inline_data.c | 811 +++++++++++++++++++++++++++++
> > lib/ext2fs/inode.c | 8 +-
> > lib/ext2fs/mkdir.c | 77 ++-
> > lib/ext2fs/newdir.c | 25 +
> > lib/ext2fs/punch.c | 28 +-
> > lib/ext2fs/swapfs.c | 27 +-
> > lib/ext2fs/valid_blk.c | 7 +
> > misc/mke2fs.8.in | 3 +
> > misc/mke2fs.c | 18 +-
> > misc/mke2fs.conf.in | 2 +-
> > misc/tune2fs.8.in | 3 +
> > misc/tune2fs.c | 99 +++-
> > tests/f_bad_disconnected_inode/expect.1 | 9 +
> > tests/r_inline_xattr/expect | 6 +-
> > 35 files changed, 2535 insertions(+), 149 deletions(-)
> > create mode 100644 lib/ext2fs/inline_data.c
> >
> > --
> > 1.7.9.7
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
prev parent reply other threads:[~2013-12-07 3:40 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-06 9:57 [PATCH v3 00/30] e2fsprogs: inline data refinement patch set Zheng Liu
2013-12-06 9:57 ` [PATCH v3 01/30] libext2fs: support modifying arbitrary extended attributes Zheng Liu
2013-12-06 9:57 ` [PATCH v3 02/30] libext2fs: various tweaks to the xattr editor APIs Zheng Liu
2013-12-06 9:57 ` [PATCH v3 03/30] libext2fs: extend xattr api to query number of attrs Zheng Liu
2013-12-06 9:57 ` [PATCH v3 04/30] libext2fs: fix memory leaks in extended attribute code Zheng Liu
2013-12-06 9:57 ` [PATCH v3 05/30] libext2fs: fix block leak when releasing xattr block Zheng Liu
2013-12-06 9:57 ` [PATCH v3 06/30] libext2fs: remove redundant code Zheng Liu
2013-12-06 9:57 ` [PATCH v3 07/30] libext2fs: free key/value pairs before reading Zheng Liu
2013-12-06 9:57 ` [PATCH v3 08/30] debugfs: dump all extended attributes Zheng Liu
2013-12-06 9:57 ` [PATCH v3 09/30] libext2fs: check inline_data in ext2fs_xattrs_read/write Zheng Liu
2013-12-06 21:38 ` Darrick J. Wong
2013-12-07 3:45 ` Zheng Liu
2014-03-03 23:33 ` Darrick J. Wong
2013-12-06 9:57 ` [PATCH v3 10/30] libext2fs: define new dirent_swab interfaces for inline data Zheng Liu
2014-03-03 15:49 ` Theodore Ts'o
2014-03-13 16:32 ` jon ernst
2014-03-14 2:44 ` Theodore Ts'o
2013-12-06 9:57 ` [PATCH v3 11/30] libext2fs: handle inline data in dir iterator function Zheng Liu
2014-03-03 22:16 ` Theodore Ts'o
2014-03-03 23:31 ` Darrick J. Wong
2014-03-04 13:56 ` Theodore Ts'o
2014-03-04 4:48 ` Zheng Liu
2013-12-06 9:57 ` [PATCH v3 12/30] libext2fs: handle inline_data in block " Zheng Liu
2013-12-06 9:58 ` [PATCH v3 13/30] debugfs: make stat command support inline data Zheng Liu
2013-12-06 9:58 ` [PATCH v3 14/30] debugfs: make expand " Zheng Liu
2013-12-06 9:58 ` [PATCH v3 15/30] debugfs: make mkdir " Zheng Liu
2013-12-06 9:58 ` [PATCH v3 16/30] debugfs: make lsdel " Zheng Liu
2013-12-06 9:58 ` [PATCH v3 17/30] debugfs: handle inline_data feature in bmap command Zheng Liu
2013-12-06 9:58 ` [PATCH v3 18/30] debugfs: handle inline data feature in punch command Zheng Liu
2013-12-06 9:58 ` [PATCH v3 19/30] libext2fs: handle inline data in read/write function Zheng Liu
2014-03-03 23:57 ` Darrick J. Wong
2013-12-06 9:58 ` [PATCH v3 20/30] libext2fs: add inline_data feature into EXT2_LIB_FEATURE_INCOMPAT_SUPP Zheng Liu
2013-12-06 9:58 ` [PATCH v3 21/30] mke2fs: add inline_data support in mke2fs Zheng Liu
2013-12-06 9:58 ` [PATCH v3 22/30] tune2fs: add inline_data feature in tune2fs Zheng Liu
2013-12-10 21:06 ` Darrick J. Wong
2013-12-06 9:58 ` [PATCH v3 23/30] e2fsck: add problem descriptions and check inline data feature Zheng Liu
2013-12-06 9:58 ` [PATCH v3 24/30] e2fsck: check inline_data in pass1 Zheng Liu
2014-03-03 22:18 ` Theodore Ts'o
2014-03-04 4:51 ` Zheng Liu
2013-12-06 9:58 ` [PATCH v3 25/30] e2fsck: check inline_data in pass2 Zheng Liu
2013-12-06 9:58 ` [PATCH v3 26/30] e2fsck: check inline_data in pass3 Zheng Liu
2013-12-06 9:58 ` [PATCH v3 27/30] tests: change result in f_bad_disconnected_inode Zheng Liu
2013-12-06 9:58 ` [PATCH v3 28/30] mke2fs: enable inline_data feature on ext4dev filesystem Zheng Liu
2013-12-06 9:58 ` [PATCH v3 29/30] libext2fs: export inode cahce creation function Zheng Liu
2013-12-06 9:58 ` [PATCH v3 30/30] libext2fs: add a unit test for inline data Zheng Liu
2013-12-07 1:53 ` [PATCH v3 00/30] e2fsprogs: inline data refinement patch set Darrick J. Wong
2013-12-07 3:43 ` Zheng Liu [this message]
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=20131207034344.GA13745@gmail.com \
--to=gnehzuil.liu@gmail.com \
--cc=darrick.wong@oracle.com \
--cc=linux-ext4@vger.kernel.org \
--cc=tytso@mit.edu \
--cc=wenqing.lz@taobao.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.