Skip to contentSkip to conversation

64-bit e2fsprogs patch queue

DISCUSSION Theodore Tso 2 participants 3 messages Feb 3, 2009 – Feb 27, 2009

lore
Share & tools
lore
#0 lore raw

For folks who want to follow along with the 64-bit e2fsprogs integration effort.

- Ted

Quoted 6 lines · Valerie Aurora Henson

Hey Ted,

Eric said something about my 64-bit patches being against the wrong branch. What should I base them against? My goal is to get some subset of the patches into some branch in your repo - I'm happy with any branch and any number.

Not your fault; the issue was the "pu" branch hadn't been updated in a long time, and it had some 64-bit patches that you needed to base your work on. So you did the right thing; it was just that the "pu" branch was based on somethig around the time of e2fpsrogs 1.41.1, and there had been a lot of other fix-ups that had gone in since then.

I thought you were out due to your shoulder surgery, so I've already rebased your patches; to see what I've done, take a look at:

	http://github.com/tytso/e2fsprogs-64bit/tree/master
	git://github.com/tytso/e2fsprogs-64bit.git

(This was my excuse to play with github; previously I had used git.or.cz for the ext4 patch queue).

This is a patch series based off of e2fsprogs 1.41.4. It includes the 'pu' proposed update patches, plus your patches, rebased against the latest e2fsprogs development head.

It is a patch series because some of the patches clearly need cleanup and refactorization. For example, you had fixed some bugs in Jose's 64-bit_mke2fs_cleanup patch, that should be merged into his patch. For another, what's up with "0031-temporary-check-about-to-checksum- conversion.patch"? :-)

I also suspect there may be places where I've added some old interface since 1.41.1 that would therefore not be caught in your patches, which is another reason why the patches will need updating after the rebasing effort.

So... the way I use this patch set is via a tool called "guilt":

git://git.kernel.org/pub/scm/linux/kernel/git/jsipek/guilt.git
http://git.kernel.org/?p=linux/kernel/git/jsipek/guilt.git

Works just like quilt, in that you can use "guilt push", "guilt pop", etc. I like it because as you push and pop commits, they are real commits in git, so I can review them via "git log", and make sure the commit changelogs make sense. "git grep" works, "git log -p", "git log --stat", etc.

If you want to use guilt, after installing it, do:

% cd /usr/projects/e2fsprogs <---- replace w/ your e2fsprogs repo
% mkdir .git/patches; pushd .git/patches
% git clone git://github.com/tytso/e2fsprogs-64bit.git shared-64bit % cp /dev/null shared-64bit/status
% popd
% ln -s .git/patches/shared-64bit patches <---- optional, for convenience
% git checkout -b shared-64bit v1.41.4
% guilt push -a

You can also use quilt if you like, in that case, just drop the contents of the patch tree repo in the top-level "patches" directory.

If you sign up to github, I'll add you to the access list so you can also push updates to the patch queue. That way we can work together on cleaning up the patch series, and as things are ready at the beginning of the queue, I'll merge it into mainline and then we can delete them from the patch series.

This is the workflow that we developed for the ext4 patch queue, and it worked really well, with Mingming, Eric,and I having access to the ext4 patch queue for kernel patches. That way they could queue up their patches, and afterwards multiple people could edit and refine the patches so they could be made ready to be pushed into mainline. IIRC Eric uses guilt, although Mingming prefers to use raw quilt. Either works.

Sound like a plan?

- Ted

#1 lore raw
Quoted 5 lines · Theodore Tso

I thought you were out due to your shoulder surgery, so I've already rebased your patches; to see what I've done, take a look at:

	http://github.com/tytso/e2fsprogs-64bit/tree/master
	git://github.com/tytso/e2fsprogs-64bit.git

[Instructions for applying these patches with guilt]

I've exported the rebased series as a git branch in my repo:

git://git.kernel.org/pub/scm/fs/ext2/val/e2fsprogs.git

Branch "shared-64bit".

The commit that introduces the failing regression test is:

commit de119e26eb2cf041a8365994dc3a32efc080682e

Author: Valerie Aurora Henson <[email protected]>
Date:   Tue Feb 3 13:15:19 2009 -0800

e2fsck: Miscellaneous e2fsck-related 64-bit fixes.

With this change, e2fsck runs to completion on a minimal 33-bit file system.

I won't be able to get to this for another week or so, so if anyone else wants to take a whack at it, I'd be grateful.

-VAL

#2 lore raw
In reply to Theodore Tso
Quoted 6 lines · Theodore Tso

It is a patch series because some of the patches clearly need cleanup and refactorization. For example, you had fixed some bugs in Jose's 64-bit_mke2fs_cleanup patch, that should be merged into his patch. For another, what's up with "0031-temporary-check-about-to-checksum- conversion.patch"? :-)

I've fixed the above and redid the progress meter patches as you requested. I made some attempt to work with the guilt patch queue but gave up, so the patch set is in the git branch "shared-64bit-handover" at:

git://git.kernel.org/pub/scm/fs/ext2/val/e2fsprogs.git

I need you (or Jose) to take the lead on these from here on out; I have to do things other than work on e2fsprogs in order to justify my existence at Red Hat. :)

-VAL