When you say GNU the assumption is that you mean GNU/HURD (HURD is official GNU kernel not Linux), which is probably not what you mean.
If you read over the wiki article about Linux naming you will learn that GNU decided to use Linux for its first release's kernel instead of HURD. To be nice they put Linux in their name of GNU/Linux. GNU is technically the operating system (OS) and Linux is the kernel (a part within the OS). Unfortunately for the GNU people, mass user adoption of calling the OS by the kernel (Linux) instead of the OS itself left them with less credit; thus the controversy.
But to answer your question, all Linux kernel usage is open source and GPL. However sometimes the OS that runs the kernel is not (such as Android). Yet Android is still claimed to be Linux.
My personal choice has been to always stick with Debian GNU/Linux or variants such as Lubuntu (a light weight Ubuntu variant) which offer the most free and complete package that I am looking for.
Want DP delivered to your inbox daily? Subscribe here: