True, but Linux originally used the GPLv2, but IIRC never said anywhere whether it was GPLv2-only or GPLv2 or any later version, or just "GPL". According to the GPL, that means:
> If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
So Linux could've theoretically upgraded to the GPLv3 (or GPLv2+). However, Linus didn't like that idea, and in 2006 edited the COPYING file to say that it was GPLv2-only. If you really wanted to, you could take the 2006 source code and make a GPLv3 fork of Linux.
> If you really wanted to, you could take the 2006 source code and make a GPLv3 fork of Linux.
You certainly theoretically could, but maintaining, updating, and modernizing such a beast would be out of the reach of most people and organizations. 11 years of progress can't be replicated so quickly, especially when you consider you'd need to do it in a clean-room sort of fashion to be entirely aboveboard, which means many people who are already well familiar with the Linux kernel couldn't even work on it.
At any rate, I think your estimate of the timing is off: I found references to the "GPLv2-only" language in the kernel's COPYING file as far back as linux-2.4.0-test8, which was released sometime in 2000, and I didn't really try to go farther back.
I read through the entire post without realizing who wrote it. I just want to let you know your work is fantastic. Thank you for everything you've contributed to emulation.
> If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
So Linux could've theoretically upgraded to the GPLv3 (or GPLv2+). However, Linus didn't like that idea, and in 2006 edited the COPYING file to say that it was GPLv2-only. If you really wanted to, you could take the 2006 source code and make a GPLv3 fork of Linux.