"Google's refusal to not release Honeycomb source code is kosher because the code in question is released under the Apache license. But the kernel at the heart of Android is GPL'd, which means that code must be released. Google has actually been a good citizen in this regard
Wait, hold on a minute. It's precisely the fact the Apache licence doesn't compel them to release the source that would make them "good citizens" if they did, rather than just giving it to a select few OEMs.
but many third-party Android vendors, not so much. While Asus has released their code, there are a host of companies that seem to have not done so, and Matthew Garrett is maintaining a list."
We were sold on Android being an open source and free alternative to iOS and the like, but unfortunately the reality is proving anything but. Part of this is Google going back on their stance on what constitutes open, but also that they haven't more rigorously enforced compliance of the GPL by their OEMs.
It's a shame they have to do this for companies other than Asus and Samsung (good GPL folk, IIRC), but companies have proved time and time again their misunderstanding of what their responsibilities are under the GPL at best, and knowingly ignoring them at worst.