suspend2 merge [was Re: [Suspend2][ 0/9] Extents support.]

Pavel Machek
2006-06-30T17:55:55Z

Hi!

> > > It's because it's all so interconnected. Adding the modular
> > > infrastructure is useless without something to use the modules. Changing
> > > to use the pageflags functionality requires modifications in both the
> > > preparation of the image and in the I/O. There are bits that could be
> > > done incrementally, but they're minor. I did start with the same codebase
> > > that Pavel forked, but then did substantial rewrites in going from the
> > > betas to 1.0 and to 2.0.
> >
> > Hmm, so, if you leave out the controversial in-kernel stuff like, user
> > interface bits, "extensible API", compression, and crypto, are you
> > saying there's nothing in suspend2 that can be merged separately?
>
> My point was that the architecture of Suspend2 is fundamentally different to
> that of swsusp. Suspend2 features could potentially be added to swsusp, but
> it would require a lot of work on swsusp. I've worked hard to make

That is how kernel development works, I'm afraid. It is better to let
someone do lot of work than to have to merge 14000 lines in one go.

It sucks if that "someone" is you, I guess.

Kernel development works by evolution, unless there's really good
reason not to. And no "swap file support for suspend" is not good
enough reason. Maybe suspend2 was designed to be nice, fast, and full
of features; unfortunately it was not designed to be
mergeable. Oops. I believe you even stated that you do not want it
merged at one point.

There are two possible ways forward:

1. suspend2 stays out of tree, pretty much forever. (Or as long as you
are interested).

2. suspend2 gets complete rewrite, using code that is already present
in kernel to maximum extent. Yes, you need to do "evolution", merge
quickly, and make clear improvement with each patch. You also have to
explain why your patch is neccessary -- why current code can not do
the job. Fortunately for you,all the neccessary support is already in
tree. Only piece missing is "save whole image", and Rafael actually
has patch for that -- but that patch was deemed too dangerous.

Now, I'm sorry you wasted lots of work splitting patches
function-by-function, but watching lkml for a while would probably
tell you how mergeable patches look, and I believe I was pretty clear
that splitting suspend2 is not the _only_ requirement to get it
merged.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html