Linux now has a Code of Conduct. In the resulting backlash some people have claimed that developers can "flip a kill switch" or "pull their code" from Linux. They seem to mean that developers can revoke the GPL license from the code they have already contributed and force it to be removed from the kernel. Of course if this were done the effect would be disastrous, forcing Linux developers to scramble to identify and replace the affected code, which would be difficult at best and impossible at worst.
However I'm a bit skeptical of this interpretation of copyright law. My amateur understanding is that Linux contributers continue to own the code they wrote but offer it under the GPL upon submitting it; whoever pulls that code licenses it under the GPL at that moment and that license doesn't expire. That license allows other developers and end users to continue using and copying that code under the GPL. While developers can stop offering to license their code to new licensors, as long as people obtain the code via a chain leading back to an original licensor, it is still GPLed.
Is my understanding correct? Or can developers revoke their code from Linux?