There are four things I dislike about the GPL. In no particular order:
Its bad writing causes flame wars. So there are flame wars about the concept, that's OK, but there are also flame wars about what the GPL says, and that's simply inacceptable. Writing clear prose isn't that difficult.
I do not want to spend a single hour in the rest of my life arguing about what the GPL says and doesn't say. I do not want any more mail from advokids with too much time on their hands.
The bad prose causes misunderstandings as well as flame wars. I hate the flame wars, but viewed objectively, the misunderstandings may be worse. Just now, the SFLC sued no less than 14 vendors over GPL violations. These aren't the first 14 to be sued, and as time goes by I find it difficult to believe that all of them can be cynical nasties who knew what they were doing and expected to get away with it. I think that the GPL is badly written, often misunderstood, and that its authors carry some responsibility for these misunderstandings.
It misuses the word free (as well as freedom and liberty). In my opinion, software only qualifies as free if I can do things with it that the rights owner hates. That's freedom.
In a free society, only the legislature limits our actions. A rights owner who tries to limit our actions should not pretend to do so in the name of freedom.
It's based on a fallacy. I don't believe in those myths about secretaries writing lisp or random users modifying their printer firmware. Real software is complex, badly documented and difficult to edit until one learns to know its innards; changing its licensing terms has no effect on that.
Anyone who wants a published piece of software to be modified and for the modifications to be published on the same terms should concentrate on the most important factors: Well-documented source, good design and clear source layout, and being friendly to potential developers. The choice of license is IMO barely more important than getting a good logo.
It tries to force people, and I do not like force, and I don't think it works well enough to be justified.
Take the Linksys example. In 2004 Linksys was forced to release the WRT source. Then in 2005 Linksys switched OS away from linux, supposedly because Linux needed too much RAM and ROM. Maybe that's true, but personally I think Linux can be made to run with little memory, it just takes effort. So which effect did the GPL's force have on Linksys? Only a few Linksys employees really know.
I'm unhappy about using force for such uncertain gain. Doubly so when it's in the name of freedom.