To be clear, they mostly publish their changes under open or even copyleft (APSL) licenses. The problem isn't one that the GPL solves. They just dump the modified sources on their FTP and make no attempt to interact with upstream.
The limited exception is Clang/LLVM, where to some extent they are the upstream.
(A clarification: I also like the MIT license, but the majority of BSD is published under the so-named BSD license, with some number of other clauses. You might already know that, and if so, sorry for repeating the explanation; I wasn't sure from your comment. They're both permissive, but not identical licenses.)
This is why I personally force GPLv3 licenses in my own projects, even if it's fairly small.
MIT is a beautiful license but, unfortunately this happens when idealism collides head-on with private corporations.