Why now? Torvalds released 2.6.39 last week. As we're looking at 2.6.40, Torvalds seems to think it's time for a change. "The voices in my head also tell me that the numbers are getting too big. I may just call the thing 2.8.0. And I almost guarantee that this PS is going to result in more discussion than the rest, but when the voices tell me to do things, I listen."
And so it has. While many developers dismiss version numbering as "just marketing," marketing does have some importance. Those in the know may understand that the version numbers indicate very little about the actual changes between versions — but the rest of the world still looks at the numbers.
The rest of the world that looks at the numbers has been waiting a long time for a version bump. It's been about seven years since the first 2.6.0 kernel was released, and the odd-numbered scheme for development kernels was abandoned, which is easily the longest stretch without a version bump:
- Linux pre-1.0 versions ran from 1991 to 1994: Three years.
- Linux 1.x ran from 1994 through mid-1996: Two and half years.
- Linux 2.0.x was the mainline stable kernel from mid-1996 through early 1999: Less than three years.
- Linux 2.2.x was the mainline stable kernel from early 1999 through early 2001: About two years.
- Linux 2.4.x was the mainline stable kernel from early 2001 through late 2003: About three years.
- Linux 2.6.x is the mainline stable kernel since mid-December 2003: More than seven years.
Note that, of course, the kernel folks continued to release updates to previous kernels even after a new major version was released. So, for example, the 2.4 release still receives (infrequently) updates for the small number of users who are on 2.4.x. Prior to 2.6.x the kernel had an odd/even numbering scheme for development vs. stable kernels. For example, work on major new features would go into 2.5.x while 2.4.x was the mainline stable release.
The reason it's been so long for a "major" bump is that the old model of kernel development went by the wayside in favor of time-based releases. This got rid of the need for odd/even releases and major bumps in release numbers that indicated lots of new features that had been in the works.
A 2.8 release won't really indicate big changes in the kernel — but it would get press attention outside (and inside) the Linux community, which isn't necessarily a bad thing. And it would coincide nicely with the 20th anniversary of the Linux kernel, which is (arguably) in August.
Does that mean a 3.0 is within sight? Yes and no. Maybe as Linux approaches its 30th anniversary. Torvalds says, "since we no longer do version numbers based on features, but based on time, just saying 'we're about to start the third decade'" works as well as any other excuse" to name the release Linux 3.0.