So I've been noodling over Andreas' patches to support 32-bit extents,
as well as glancing at the 48-bit and 64-bit patches, and I've come to
an initial plan for how to fold this into e2fsprogs in the most
ABI-preserving, backwards compatible way possible. This does mean that
the patches will
it isn't required at all.
Regards,
- Ted
--
Add checks to see if the partition is in use by Lustre
Signed-off-by: Andreas Dilger [EMAIL PROTECTED]
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
diff -r 32c7d2357ee2 lib/ext2fs
, and this allows for a cleaner data structure on disk.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
Index: e2fsprogs/lib/ext2fs/ext2_fs.h
===
--- e2fsprogs.orig/lib/ext2fs/ext2_fs.h 2006-10-11 01:29:36.0 -0400
+++ e2fsprogs/lib
: December 15, 2006
Workshop Organizers
Program Chair
Ric Wheeler, EMC
Program Committee
Jens Axboe, Oracle
James Bottomley, SteelEye
Valerie Henson, Intel
Andrew Morton, Google
Trond Myklebust, Network Appliance
Brian Pawlowski, Network Appliance
Theodore Ts'o, IBM
Overview
The Linux Storage
There is a newly updated ext4 patchset available at:
http://www2.kernel.org/pub/linux/kernel/people/tytso/ext4-patches
and
http://www2.kernel.org/git/?p=linux/kernel/git/tytso/ext4.git
Compared to 2.6.20-ext4-1, I've removed the the i_version patch, since
they had numerous
For a while now, I've been receiving complaints from users who have been
using BackupPC, or some other equivalent backup progam which functions
by using hard links to create incremental backups. (There may be some
people who are using rsync to do the same thing; if you know of other
such backup
overlap bugfix
Dave Kleikamp (1):
EXT4: Fix whitespace
Mingming Cao (1):
Remove unnecessary exported symbols.
Theodore Ts'o (1):
Define/reserve new ext4 superblock fields
-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL
I've released the 2.6.22-rc4-ext4-1 tree, which can be downloaded from
the usual place:
http://ftp.kernel.org/pub/linux/kernel/people/tytso/ext4-patches
This is just a rebase versus 2.6.22-rc4, and reflects the bugfix patches
that have been accepted into mainline.
The hg repository located at:
http://thunk.org/hg/e2fsprogs
... contains what I hope to be the e2fsprogs 1.40 release. If folks
could test it and let me know if they find any embarassing bugs, I would
greatly appreciate it. It can also be found at:
People may have noticed that e2fsprogs 1.40 and roughly a week later
e2fsprogs 1.40.1 have been released, while there hasn't been any
activity at http://thunk.org/hg/e2fsprogs. That's because right after
e2fsprogs 1.40, I have moved the e2fsprogs development activity over to
git. The public
Per our discussion on the call, I've moved the fallocate patches back up
to the front of the queue, and rebased the syscall numbers to 2.6.22.
So we're just waiting for Amit to make the minor on-disk format change
Andreas suggested before we push to Linus.
E2fsprogs 1.40.2 has been released. It can be downloaded from one of
the following sites:
http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.40.2.tar.gz
ftp://ftp.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/e2fsprogs-1.40.2.tar.gz
Release notes follow...
E2fsprogs 1.40.2 (July
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git for_linus
It contains the following feature enhancements, including support for
the new fallocate() system call. These have been in -mm for a while,
consensus reached for the fallocate() interface
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git for_linus
Many thanks!!
- Ted
Eric Sandeen (2):
Fix fencepost error in ext[234]_check_descriptors
Remove unused bh in calls to
It turns out the need for this was only in the very first ports of
Linux to the Powerpc, and there haven't been kernels that would mount
big-endian superblocks since, oh, 1998 or so (in the 2.0 days).
So probably the better fix is one where we don't allow big-endian
filesystems any more. On all
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
tests/f_swapfs/debugfs.cmd |5 --
tests/f_swapfs/expect | 133
tests/f_swapfs/image | Bin 1048576 - 0 bytes
tests/f_swapfs/image.gz| Bin 3777 - 0 bytes
tests/f_swapfs/name
We don't need byte swapping to be a run-time option; it can just be a
compile-time option instead.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
lib/ext2fs/bmap.c | 28 ++---
lib/ext2fs/closefs.c | 77 ---
lib/ext2fs
This removes the last vestiges of support for the legacy PowerPC
big-endian filesystem format.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
configure | 33 ++---
configure.in | 20
debian/rules |6
The need for fixing byte-swapped filesystems is long-gone, and this is
getting in the way of cleaning up e2fsprogs's bitmaps code. So let's
get rid of it; modern kernels haven't been able to deal with a
byte-swapped filesystem in in about 9 years.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
debugfs/logdump.c |2 +-
e2fsck/journal.c |2 +-
e2fsck/util.c |2 +-
misc/dumpe2fs.c |7 ---
misc/e2image.c|8 +++-
5 files changed, 6 insertions(+), 15 deletions(-)
diff --git a/debugfs/logdump.c b
Hi there,
There was recent discussion of taking out support for dead OS's and
features in e2fsprogs, such as fragmentation, support for the Masix
OS and Hurd. So in the interests of doing some research to see
whether or not Hurd was really completely dead, or just mostly dead
(to in the
I've been busy working on extents support in e2fsck, and so as part of
that I was looking at the clusterfs extent patches (mostly for
inspiration to see how they work). One of the things which I noticed is
the patches seem to check the inode direct blocks, and if they look like
the extent header,
For people who are curious about how the extents patch for e2fsprogs
is going, here's what I currently have as a work in progress. With
this patch, e2fsck will currently correctly handle a valid filesystem
that contains extents, but it's missing a lot of sanity checks. In
particular, the pass1b
to be a pointer to the ss_request_table.
In addition, the symbol debug_prog_name can be used to override the
name of the program printed in the version banner and in the ss
prompt.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
debugfs/debugfs.c | 21 -
1 files changed, 16
Factor out code to clear a bogus inode and update e2fsck's internal
data structures accordingly into a common routine,
e2fsck_clear_inode(). This saves about 200 bytes in the compiled x86
e2fsck executable, and makes the code more maintainable in the
long-term.
Signed-off-by: Theodore Ts'o
/ext2fs/extent.c
new file mode 100644
index 000..a6f4f65
--- /dev/null
+++ b/lib/ext2fs/extent.c
@@ -0,0 +1,616 @@
+/*
+ * extent.c --- routines to implement extents support
+ *
+ * Copyright (C) 2007 Theodore Ts'o.
+ *
+ * %Begin-Header%
+ * This file may be redistributed under the terms
I've pushed out a new ext4 patchset, based off of 2.6.23-rc7. I had to
fix a number of patch application errors and compile-time errors in the
ext4 patch queue; I'll send mail separately about each of those fix ups.
It's available in the standard place:
FYI, I updated the mballoc-core patch in the ext4-patch-queue to not try
to pull in both ext4_jbd2.h and jbd.h; this was causing duplicate
definition, so I removed the #include of jbd.h
- Ted
Remove #include of linux/jbd.h from mballoc-core so it will
doesn't need __GFP_NOFAIL
+
+Signed-off-by: Mingming Cao [EMAIL PROTECTED]
+Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
+
---
fs/jbd/journal.c |2 +-
fs/jbd2/journal.c |2 +-
diff --git a/jbd_kmalloc_kzalloc.patch b/jbd_kmalloc_kzalloc.patch
index a426d0e..8ca0469 100644
I've just released the 2.6.23-rc7-ext4-1; it's largely identical to
2.6.23-rc6-ext4-1 except that I've synchronized patches and patch names
with patches that Andrew had pulled into 2.6.23-rc7-mm1.
It's available in the standard place:
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Signed-off-by: Mingming Cao [EMAIL PROTECTED]
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
fs/jbd/journal.c |2 +-
fs/jbd2/journal.c |2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/jbd/journal.c b/fs/jbd/journal.c
From: Mingming Cao [EMAIL PROTECTED]
Convert kmalloc to kzalloc() and get rid of the memset().
Signed-off-by: Mingming Cao [EMAIL PROTECTED]
---
fs/ext4/xattr.c |3 +--
fs/jbd2/journal.c |3 +--
fs/jbd2/transaction.c |3 +--
3 files changed, 3 insertions(+), 6 deletions(-)
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Convert bg_inode_bitmap and bg_inode_table to bg_inode_bitmap_lo
and bg_inode_table_lo. This helps in finding BUGs due to
direct partial access of these split 64 bit values
Also fix one direct partial access
Signed-off-by: Aneesh Kumar K.V [EMAIL
From: Mingming Cao [EMAIL PROTECTED]
JBD: Replace slab allocations with page cache allocations
JBD allocate memory for committed_data and frozen_data from slab. However
JBD should not pass slab pages down to the block layer. Use page allocator
pages instead. This will also prepare JBD for the
From: Jan Kara [EMAIL PROTECTED]
We should really call journal_abort() and not __journal_abort_hard() in
case of errors. The latter call does not record the error in the journal
superblock and thus filesystem won't be marked as with errors later (and
user could happily mount it without any
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Convert ext4_extent_idx.ei_leaf ext4_extent_idx.ei_leaf_lo
This helps in finding BUGs due to direct partial access of
these split 48 bit values.
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
---
fs/ext4/extents.c |4 ++--
The following ext4 patches are planned for submission to Linus once
the merge window for 2.6.24-rc1 is opened.
- Ted
-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Convert s_blocks_count to s_blocks_count_lo
This helps in finding BUGs due to direct partial access of
these split 64 bit values
Also fix direct partial access in ext4 code
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
---
fs/ext4/super.c |
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Convert s_r_blocks_count and s_free_blocks_count to
s_r_blocks_count_lo and s_free_blocks_count_lo
This helps in finding BUGs due to direct partial access of
these split 64 bit values
Also fix direct partial access in ext4 code
Signed-off-by: Aneesh
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Convert bg_block_bitmap to bg_block_bitmap_lo
This helps in catching some BUGS due to direct
partial access of these split fields.
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
---
fs/ext4/super.c |6 +++---
include/linux/ext4_fs.h |2
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Convert ext4_extent.ee_start to ext4_extent.ee_start_lo
This helps in finding BUGs due to direct partial access of
these split 48 bit values
Also fix direct partial access in ext4 code
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
---
From: Jose R. Santos [EMAIL PROTECTED]
Mostly stolen from akpm's JBD cleanup patch.
- use `#ifdef foo' instead of `#if defined(foo)'
- Make journal_enable_debug __read_mostly just for the heck of it
- Make jbd_debugfs_dir and jbd_debug static
- debugfs_remove(NULL) is legal: remove unneeded
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
---
fs/ext4/fsync.c |2 +-
fs/ext4/inode.c |2 +-
fs/ext4/xattr.c |4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/fs/ext4/fsync.c b/fs/ext4/fsync.c
index
From: Aneesh Kumar K.V [EMAIL PROTECTED]
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
Signed-off-by: Andrew Morton [EMAIL PROTECTED]
---
fs/ext4/inode.c |6 --
include/linux/ext4_fs.h | 14 +++---
2 files changed, 11 insertions(+), 9 deletions(-)
diff --git
From: Jan Kara [EMAIL PROTECTED]
With 64KB blocksize, a directory entry can have size 64KB which does not fit
into 16 bits we have for entry lenght. So we store 0x instead and convert
value when read from / written to disk. The patch also converts some places
to use ext4_next_entry() when we
From: Takashi Sato [EMAIL PROTECTED]
This patch set supports large block size(4k, =64k) in ext4,
just enlarging the block size limit. But it is NOT possible to have 64kB
blocksize on ext4 without some changes to the directory handling
code. The reason is that an empty 64kB directory block would
From: Takashi Sato [EMAIL PROTECTED]
This patch set supports large block size(4k, =64k) in ext2,
just enlarging the block size limit. But it is NOT possible to have 64kB
blocksize on ext2 without some changes to the directory handling
code. The reason is that an empty 64kB directory block would
From: Jan Kara [EMAIL PROTECTED]
With 64KB blocksize, a directory entry can have size 64KB which does not fit
into 16 bits we have for entry lenght. So we store 0x instead and convert
value when read from / written to disk.
Signed-off-by: Jan Kara [EMAIL PROTECTED]
Signed-off-by: Mingming
[EMAIL PROTECTED]
Signed-off-by: Mingming Cao [EMAIL PROTECTED]
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
Signed-off-by: Andrew Morton [EMAIL PROTECTED]
---
fs/ext4/dir.c |7 ---
fs/ext4/namei.c | 20
include/linux/ext4_fs.h | 14 ++
3
From: Takashi Sato [EMAIL PROTECTED]
This patch set supports large block size(4k, =64k) in ext3
just enlarging the block size limit. But it is NOT possible to have 64kB
blocksize on ext3 without some changes to the directory handling
code. The reason is that an empty 64kB directory block would
From: Jose R. Santos [EMAIL PROTECTED]
data is located within the storage media. This allows for the allocation
of bitmaps or inode tables outside the block group boundaries in cases
where bad blocks forces us to look for new blocks which the owning block
group can not satisfy. This will also
From: Coly Li [EMAIL PROTECTED]
implement in future. Therefore fragment related source code in ext4 should
be obsoleted -- no one will use it.
This patch obsolete fragment from ext4. Another patch posted on linux-ext4
removing fragment supporting from e2fsprogs.
Signed-off-by: Coly Li [EMAIL
From: Jan Kara [EMAIL PROTECTED]
With 64KB blocksize, a directory entry can have size 64KB which does not fit
into 16 bits we have for entry lenght. So we store 0x instead and convert
value when read from / written to disk. The patch also converts some places
to use ext3_next_entry() when we
Here are the topics that are cooking in e2fsprogs. Commits prefixed
with '-' are only in 'pu' while commits prefixed with '+' are in
'next'. Commits prefixed with '.' are not in either branch for now.
* tt/64bit-bitmaps (Sun Oct 14 22:51:51 2007 -0400) 1 commit
- Initial design for 64-bit
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git for_linus
It has a number random cleanups and bug fixes, and two new features.
The first is uninitialized block groups, which allows fast mke2fs
operations plus as well as speeding up e2fsck by
We can't set the flags on symbolic links, so check for them using
lstat().
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
lib/e2p/fgetflags.c |2 +-
lib/e2p/fsetflags.c |2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/e2p/fgetflags.c b/lib/e2p/fgetflags.c
, although the exit status will still be
non-zero.
Addresses-Red-Hat-Bugzilla: #180596
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
Signed-off-by: Eric Sandeen [EMAIL PROTECTED]
---
misc/chattr.1.in |7 ++--
misc/chattr.c| 83 +++--
2 files
To allow error messages to be reflected up, if the callback function
returns a non-zero value, bump a counter and return the number of
times the callback function signals an error by returning a non-zero
status code.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
lib/e2p/iod.c |7
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
misc/badblocks.c | 22 +++---
1 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/misc/badblocks.c b/misc/badblocks.c
index 29c5a5c..155fb77 100644
--- a/misc/badblocks.c
+++ b/misc/badblocks.c
@@ -67,7 +67,7
The strtoul() function has a lot of messy error checking that needs to
be done; by factoring it out into one place we can make sure it's done
right in all of the places where it is called.
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
misc/badblocks.c | 61
This will make it easier for us to support 64-bit block numbers when
the time comes. Not that running badblocks on a 4TB machine is
anything I want to contemplate!
Signed-off-by: Theodore Ts'o [EMAIL PROTECTED]
---
misc/badblocks.c | 74
I've just released 2.6.24-rc1-ext4-1. It removes patches accepted by
Linus and adds a number of cleanup patches. It also adds support for
storing i_blocks in units of filesystem blocks instead of 512 byte
sectors to eliminate one stupid (and easy to fix) large file scalability
limit.
Could people please use more descriptive names for patch names? Names
like:
ext4-cleanup-2.patch
ext4-cleanup-3.patch
ext4-cleanup-4.patch
aren't very useful when browsing through the series file.
Thanks,
- Ted
-
To unsubscribe from this list: send
Here are the topics that have been cooking. Commits prefixed
with '-' are only in 'pu' while commits prefixed with '+' are
in 'next'. The topics list the commits in reverse chronological
order.
* next (Sun Oct 21 21:03:14 2007 -0500) 6 commits
(plus those commits pulled in from the
* The 'maint' branch has these fixes since the last announcement.
Theodore Ts'o (1):
Fix typo in the summary section of the blkid man page
* The 'master' branch has these since the last announcement
in addition to the above.
Valerie Clement (3):
libext2fs: use ext2fs_group_first_block
Samuel Thibault (1):
Fix Debian rules files to support building non-Linux archs
Theodore Ts'o (20):
Fix errors in test_ss.c so it can be an example application and
test case
libext2fs: Fix a corner case bug in ext2fs_unlink
libss: Fix parallel build failure
Update Spanish translation
the specific patch in question.
- Ted
commit a5cab2d59b7fb032f507933d5d2b1590edbf9036
Author: Theodore Ts'o [EMAIL PROTECTED]
Date: Mon Jan 21 10:31:58 2008 -0500
Fix up patch comments
Fix up patch comments so that they look decent when imported
From: Aneesh Kumar K.V [EMAIL PROTECTED]
This function is used by the ext4 multi block allocator patches.
Also add generic_find_next_le_bit
Signed-off-by: Aneesh Kumar K.V [EMAIL PROTECTED]
Cc: linux-ext4@vger.kernel.org
Signed-off-by: Andrew Morton [EMAIL PROTECTED]
---
From: Jan Kara [EMAIL PROTECTED]
Before we start committing a transaction, we call
__journal_clean_checkpoint_list() to cleanup transaction's written-back
buffers.
If this call happens to remove all of them (and there were already some
buffers), __journal_remove_checkpoint() will decide to free
I was trying to build ext4 as a module, and ran into problems because
the online defrag patch is calling do_fsync() which is *not* an exported
symbol, and so can not be called from a module.
Looking at what the routine is doing, there's no reason to call
do_fsync(), and in fact depending on the
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git for_linus
This is the major set of updates meant for 2.6.24 from the ext4 team;
these patches have been baking in -mm for a while. The two major
features included here is the multi-block allocator
I've just released 2.6.24-ext4-1. It's basically just a clean up of the
stable patch series, in response to LKML review comments, in preparation
for Linus to pull them into mainline.
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git 2.6.24-ext4-1
):
jbd: blocks reservation fix for large block support
jbd2: blocks reservation fix for large block support
Theodore Ts'o (2):
patch test-filesys-flag.patch
ext4: New inode allocation for FLEX_BG meta-data groups.
fs/buffer.c |3
fs/ext2/dir.c
):
jbd: blocks reservation fix for large block support
jbd2: blocks reservation fix for large block support
Theodore Ts'o (5):
* ext4: Replace use of iget() with iget_locked()
* jbd2: Add error check to journal_wait_on_commit_record to avoid oops
patch test-filesys-flag.patch
compatibility when sometime (hopefully 2.6.26 or 2.6.27?) we
rename ext4dev to ext4.
Any comments before I push this change out to the maint branch?
- Ted
commit feac6e49211a44ef6f560b3b362fb132a474a471
Author: Theodore Ts'o [EMAIL PROTECTED]
Date: Fri Feb 8
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git for_linus
These are mostly bug fixes that we've found since the last pull request.
The one non-bugfix change is that I've added a sanity check to assure
that production ext3 filesystems don't get
fix for large block support
ext4: remove read-inode from defrag code,replace with ext4_iget()
Theodore Ts'o (2):
ext4: Stable/Unstable boundary
ext4: New inode allocation for FLEX_BG meta-data groups.
fs/buffer.c |3 +-
fs/ext4/Makefile
I've started testing my in-development extents against the test cases
found in clusterfs's e2fsprogs patches, and I noticed that with
f_extents (the first one I tried), some of the inodes had non-zero
ee_start_hi fields. (That is to say, they had block numbers in the
extents fields that were
that.
- Ted
commit 09138f9e096af809f1ff02df9194c9e0dad186db
Author: Theodore Ts'o [EMAIL PROTECTED]
Date: Tue Feb 19 08:32:58 2008 -0500
New mke2fs types parsing --- IN PROGRESS
diff --git a/misc/mke2fs.c b/misc/mke2fs.c
index 9d14bdd..a906797 100644
--- a/misc/mke2fs.c
+++ b
an aligned address on some arch
Mingming Cao (1):
ext4: Fix BUG when writing to an unitialized extent
Theodore Ts'o (1):
ext4: Don't use ext4_dec_count() if not needed
Valerie Clement (2):
ext4: Fix kernel BUG at fs/ext4/mballoc.c:910!
ext4: modify block allocation algorithm
80 matches
Mail list logo