Companies
should give something back, even if no one is forcing them to. Apple has "borrowed" code from CMU, FreeBSD, OpenBSD, Konqueror, LLVM, and others. After much work and improvements Apple has republished the sources as Darwin, WebKit, and more, as well as direct support of some projects:
http://www.apple.com/opensource/ And of course Google is a major contributor to open source, as was Sun before Oracle screwed them up. And these examples mostly feature permissive licenses. Even Microsoft has given back in the form of cash with between $35,000 to $75,000 given to the OpenBSD foundation starting in 2015. And who can forget Netflix rewriting the FreeBSD IP stack and Ethernet drivers to squeeze out maximum performance, and then submitting the source code back to FreeBSD.
As far as permissively-licensed code added to a GPLed project, the whole of the code simply becomes GPLed. Only if the code is
not linked can the licenses remain separate. Anyone can change a BSD, MIT, or ISC license to anything they want; not so going the other way. Before Oracle, Sun had a weird license on their ZFS code. I haven't read the license, but I heard it was specifically crafted to prevent it from becoming GPLed, but the code could be used in any open-source project that allows mixed licensing. Now that Oracle has cast off the old open-source projects, OpenZFS is stuck with the old license, but they support the effort to port ZFS into the Linux kernel (that is, OpenZFS seems to have no intention of enforcing the license).
In theory patent trolls should not be able to feck up an open-source project. Darrel McBride tried it and failed rather spectacularly. And Rambus tried it with hardware when they joined a standards body, then used the information in filing patents in an attempt to own SD-RAM and DDR-RAM technologies. That backfired too. As far as submarine patents, recent changes to US patent law should kill those. As always it should be impossible to patent anything that's public knowledge (as Rambus tried). As much as I'm not real fond of Richard Stallman, when he's right, he's right: Software patents are evil.