LWN.net Logo

Kernel Summit: Development process

Kernel Summit: Development process

Posted Jul 24, 2004 1:56 UTC (Sat) by set (guest, #4788)
Parent article: Kernel Summit: Development process

H. Peter Anvin tried to clarify the situation thusly in the
'A users thoughts on the new dev. model' thread on lk:

I think the discussion we had at the kernel summit has been somewhat
misrepresented by LWN et al. What we discussed was really more of a
"soft fork", with the -mm tree serving the purpose of 2.7, rather than
a hard fork with a separate maintainer and putting ourselves in
back/forward-porting hell all over again.

Note that Andrew's -mm tree *specificially* has infrastructure to keep
changes apart and thus backporting to 2.6 mainstream of patches which
have proven themselves becomes trivial.

Thus:

- Andrew will put experimental patches into -mm;
- Andrew will continue to forward-port 2.6 mainstream fixes to
-mm;
- Patches which have proven themselves stable and useful get
backported to 2.6;
- If the delta between 2.6 and -mm becomes too great we'll
consider a hard fork AT THAT TIME, i.e. fork lazily instead
of the past model of forking eagerly.

Why the change? Because the model already has proven itself, and
shown itself to be more functional than what we've had in the past.
2.6 is probably the most stable mainline tree we've had since 1.2 or
so, and yet Linus and Andrew process *lots* of changes. The -mm tree
has become a very effective filter for what should go into mainline,
whereas the odd-number forks generally *haven't* been, because
backporting to mainline has usually been an afterthought.

I for one welcome our new -mm overlords.

-hpa


(Log in to post comments)

Kernel Summit:Development process

Posted Jul 24, 2004 21:48 UTC (Sat) by Duncan (guest, #6647) [Link]

When I originally read this LWN article, I had the same thought, that the
reason the dynamics had changed was because the mm tree has been serving
as the testing ground that the development tree formerly occupied. I
don't see that LWN misrepresented that.

My only question at the time was why all the comments seemed so skewed
toward the loss of the development tree, and no one was pointing out how
mm was now serving that function. However, as I was reading it on a total
of about a half hour sleep the day before, and no one else was picking up
on it, I thought I obviously must have missed something somewhere and
resolved that I'd get back to the story after I caught up in sleep.

Now that I have, it seems to say the same thing it did before, and at
least ONE other poster actually seems to /get/ it (altho I was a bit put
off by the /. "overlords" reference).

I believe it's worth stating again, here in a slightly different way.
Linus seems to have finally found a teammate he can work closely enough
with to make it effective. The mm tree DOES seem to be serving the
purpose of development/testing, allowing a much smoother and more timely
flow of pre-tested patches into the "stable" kernel. Thus, the need for a
traditional development kernel is far lessened, and the pressure just
isn't there to create it, as it would just be an artificial construct, at
this point, with what's currently there working as naturally as it is.

It's likely that eventually some huge changes will build in the wings, to
much for even mm to take on, without disrupting its current roll as the
testing ground for stable. The flurry of patches after OLS will likely
test just how far off that point will be, as they equally test how well
the mm/linus feeder mechanism works with even larger changes thrown at it.
If the current system continues to work, it might be some time before 2.7,
or indeed the current system may become more or less (most?) permanent,
until something comes along to change it, anyway. If however it shows
signs of stress under the additional flexing necessary for the larger and
more intrusive patches, people will be forced to back off, and the
pressure for a 2.7 will then begin to build.

In some ways, then, the kernel summit and OLS can be seen to have invited
a serious test of the system, either potentially triggering that buildup
of pressure that hasn't really happened until now, or stress testing the
current system such that developers can be comfortable that it WILL hold
up under such conditions, and thus comfortable in allowing the new system
to really settle in.

As for the stability/distributions thing, IMO the new system should be far
better in that regard than the old one was. At least.. it wouldn't seem
to be worse. As another poster already mentioned, 2.6 has already proven
quite stable enough for a desktop system, and the folks wanting real
stability either tend to roll their own, or get a vendor version complete
with support contract anyway. In fact, if anything, the more timely flow
of updates to the "stable" kernel will likely mean *LESS* need for
patching from individual vendors than was previously the case, what with
the maze of backports and other-source patches in most vendor kernels
particularly the couple of releases previous to the switch to the next
stable kernel.

I'm definitely looking forward to seeing how this "new kernel paradigm"
plays out!

Duncan

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds