Hi all,
this will probably make me very unpopular around here, but oh well... ;)
I've started looking at _all_ files in svn and checking their respective license to see if it's GPL'd or at least has another Free Software license. Also, all such licenses must be GPL compatible, too, AFAIK (but I'm no lawyer).
This is important for a) the Debian package, which must meet the DSFG (Debian Free Software Guidelines), see http://www.us.debian.org/social_contract#guidelines and b) for the legal status of the LinuxBIOS project itself, as any non-free-software/non-gpl-compatible code in the repository would probably be illegal to distribute (depending on the exact license terms), may cause all kinds of other legal hassle and just simply compromise the whole idea of the project - to have a _free_ implementation.
So here I am, reading through all files, taking notes which of them are not GPL'd. Please check the list and clarify the exact license status of the files, e.g. by adding a GPL header similar to this one below:
/* * Copyright (C) 200x Author Name email@example.com * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
(or at least a tiny note saying "this file is copyright 200x John Doe and is licensed under the GPL)...
I'm happy to provide patches which add the above license header to all files, but someone has to tell me who wrote the code, when, and which license applies (if that's not obvious from the code).
I noticed that many files do not have any license header at all (some don't even say who the author is); such files have an unclear status and must be considered non-free usually, so in cases where that's just an oversight, please add a respective license note. If the file was taken from another project, please add a note saying so, and mention the license of that project in the file.
Assumption: All *.lb config files are GPL'd even though they don't have the lengthy GPL header in them. Correct? I don't think it's necessary for those files. The same is probably true for ChangeLog, NEWS, and documentation/ChangeLog.cvsimport, etc.
The biggest problems I notices so far is the code from IBM and AMD, which says things like "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved" or stuff like: LICENSED MATERIAL - PROGRAM PROPERTY OF I B M US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
That alone (which no additional "this is GPL'd" text would make the code non-free and GPL-incompatible, I guess. I hope this can be resolved or clarified somehow.
I also found some licenses which I simply don't know and cannot tell right now if they're fine or not - that has to be checked at some point.
Anyways, here's the list of issues I noticed so far (haven't checked all the code, yet):
-------------------------------------------------------------------------------- HOWTO/EPIA-M-howto: No license note. documentation/Makefile: No license note. documentation/RFC/*: No license note. * Is that stuff used at all? documentation/*.eps: No license note. * I assume this is GPL'd as LinuxBIOS-AMD64.tex is GPL'd. Correct? src/arch/i386/boot/acpi.c: * Says among other things "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved." which is bad as it means it's NOT GPL'd and you cannot use it for anything, really. No explicit permissions means you have no rights according to international copyright laws, AFAIK (but I'm no lawyer). src/arch/i386/boot/boot.c: No license note. src/arch/i386/boot/linuxbios_table.*: No license note. src/arch/i386/boot/pirq_routing.c: No license note. src/arch/i386/boot/tables.c: * Says: 2006.1 yhlu add mptable cross 0x467 processing 2003-07 by SONE Takeshi Ported from Etherboot to LinuxBIOS 2005-08 by Steve Magnani Etherboot is GPL'd (mostly, some parts are BSD), so this is GPL'd, right? src/arch/i386/include/*.h: No license note. src/arch/i386/include/arch/acpi.h: * Now this is totally confusing. * written by Stefan Reinauer stepan@openbios.org (GPL'd?) * (C) 2004 SUSE LINUX AG (license?) * The ACPI table structs are based on the Linux kernel sources. (GPL'd!) * ACPI FADT & FACS added by Nick Barker nick.barker9@btinternet.com those parts (C) 2004 Nick Barker (license?) * ACPI SRAT support added in 2005.9 by yhlu (license?) * Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved. ---> Baaad... src/arch/i386/include/arch/intel.h: * Not sure what to make of this... It's not the GPL, it's not the BSD license (or the MIT license), either. ((2)) Is this GPL compatible? /* This software and ancillary information (herein called SOFTWARE ) called LinuxBIOS is made available under the terms described here. The SOFTWARE has been approved for release with associated LA-CC Number 00-34 . Unless otherwise indicated, this SOFTWARE has been authored by an employee or employees of the University of California, operator of the Los Alamos National Laboratory under Contract No. W-7405-ENG-36 with the U.S. Department of Energy. The U.S. Government has rights to use, reproduce, and distribute this SOFTWARE. The public may copy, distribute, prepare derivative works and publicly display this SOFTWARE without charge, provided that this Notice and any statement of authorship are reproduced on all copies. Neither the Government nor the University makes any warranty, express or implied, or assumes any liability or responsibility for the use of this SOFTWARE. If SOFTWARE is modified to produce derivative works, such modified SOFTWARE should be clearly marked, so as not to confuse it with the version available from LANL. */ /* Copyright 2000, Ron Minnich, Advanced Computing Lab, LANL * rminnich@lanl.gov */ src/arch/i386/include/arch/*.h (except for the above ones): No license note. src/arch/i386/include/arch/boot/boot.h: No license note. src/arch/i386/include/arch/smp/*.h: No license note. src/arch/i386/init/ldscript.lb: * Says: Copyright (c) 1999 by Net Insight AB. All Rights Reserved. Not good... src/arch/i386/lib/printk_init.c: * Copyright (C) 1991, 1992 Linus Torvalds No explicit license note, but it's quite surely GPL ((1)). src/arch/i386/lib/*: No license note. src/arch/i386/llshell/readme.linuxbios: No license note. * Probably GPL'd, as the file it documents (llshell.inc) is GPL'd. src/arch/i386/smp/*: No license note. src/arch/ppc/boot/*: No license note. src/arch/ppc/include/ppc4xx.h: * Strange non-standard header, not sure what to make of it. This source code has been made available to you by IBM on an AS-IS basis. Anyone receiving this source is licensed under IBM copyrights to use it in any way he or she deems fit, including copying it, modifying it, compiling it, and redistributing it either with or without modifications. No license under IBM patents or patent applications is to be implied by the copyright license.
Any user of this software should understand that IBM cannot provide technical support for this software and will not be responsible for any consequences resulting from the use of this software.
Any person who transfers this source code or any derivative work must include the IBM copyright notice, this paragraph, and the preceding two paragraphs in the transferred software.
COPYRIGHT I B M CORPORATION 1999 LICENSED MATERIAL - PROGRAM PROPERTY OF I B M src/arch/ppc/include/ppc970.h: COPYRIGHT I B M CORPORATION 2003 LICENSED MATERIAL - PROGRAM PROPERTY OF I B M US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. src/arch/ppc/include/*.* (except for the above ones): No license note. src/arch/ppc/include/arch/*.h: No license note. src/arch/ppc/include/arch/boot/*.h: No license note. src/arch/ppc/init/ldscript.lb: * No license, but some authors: Written by Johan Rydberg, based on work by Daniel Kahlin. Rewritten by Eric Biederman Re-rewritten by Greg Watson for PPC src/arch/ppc/init/ppc_main.c: * No license, but an author: Copyright (C) 2003 by Greg Watson, Los Alamos National Laboratory gwatson@lanl.gov src/arch/ppc/lib/cpu.c: No license note. src/arch/ppc/lib/pci_dev.c: No license note. src/arch/ppc/lib/pci_ppc_conf1_ops.c: No license note. src/boot/hardwaremain.c: Same as ((2)). src/config/LinuxBIOSDoc.config: No license note (GPL?). src/config/doxyscript.base: No license note (GPL?). src/config/linuxbios_ram.ld: * Copyright (c) 1999 by Net Insight AB. All Rights Reserved. --> Bad. src/console/btext_console.c: No license note, but some authors: * Benjamin Herrenschmidt benh@kernel.crashing.org move to LinuxBIOS by LYH yhlu@tyan.com src/console/font-8x16.c: Same as ((1)). src/console/printk.c: Same as ((1)). src/console/vga_console.c: No license note, but an author: * modified from original freebios code by Steve M. Gehlbach steve@kesa.com src/console/vsprintf.c: Same as ((1)). src/console/vtxprintf.c: Same as ((1)).
targets/buildtarget: No license note. The rest of target/ has no license, too, but should be fine (mostly config files). --------------------------------------------------------------------------------
HTH, Uwe.
I've started looking at _all_ files in svn and checking their respective license to see if it's GPL'd or at least has another Free Software license. Also, all such licenses must be GPL compatible, too, AFAIK (but I'm no lawyer).
This is important for a) the Debian package, which must meet the DSFG (Debian Free Software Guidelines), see
Uwe,
Wow thats quite a list. Thank you for doing this. This is also going to be very important for OLPC. We will be releasing some stuff in the near future and I'm sure this issue will come up.
Hi Uwe,
thank you very much for your acribic arduousness.
I hope I can lower your apprehensions in this case a bit:
* Uwe Hermann uwe@hermann-uwe.de [060829 12:16]:
I've started looking at _all_ files in svn and checking their respective license to see if it's GPL'd or at least has another Free Software license. Also, all such licenses must be GPL compatible, too, AFAIK (but I'm no lawyer).
The answer here is easy. Every line of LinuxBIOS code is GPL. And every line of code we will include in the future will become GPL by the implicit agreement of the contributor to use LinuxBIOS and to enhance it.
and b) for the legal status of the LinuxBIOS project itself, as any non-free-software/non-gpl-compatible code in the repository would probably be illegal to distribute (depending on the exact license terms), may cause all kinds of other legal hassle and just simply compromise the whole idea of the project - to have a _free_ implementation.
This is why we have been doing code reviews and have been in close contact with the contributors to make sure we do not include otherwise licensed or protected code.
So here I am, reading through all files, taking notes which of them are not GPL'd. Please check the list and clarify the exact license status of the files, e.g. by adding a GPL header similar to this one below:
All of them are GPLed, as a consequence of the inclusion in LinuxBIOS. Also, files do not need a header stating their license, as the license is absolutely obvious to everyone downloading the code. We might want to have them in most files anyways.
I'm happy to provide patches which add the above license header to all files, but someone has to tell me who wrote the code, when, and which license applies (if that's not obvious from the code).
I noticed that many files do not have any license header at all (some don't even say who the author is); such files have an unclear status and must be considered non-free usually, so in cases where that's just an oversight, please add a respective license note.
No they must not. Who would say they must? Legally absolutely obvious that the files have been checked by those with checkin capabilities to be free.
An example: Not every song on a CD needs a copyright note spoken before the song starts. it is completely sufficient to print the copyright once on the CD.
If the file was taken from another project, please add a note saying so, and mention the license of that project in the file.
As we are using GPL as the license, only files with GPL license or with licenses compatible to the GPL license have been included. All files in the repository are licensed under the GPL. No exceptions.
Assumption: All *.lb config files are GPL'd even though they don't have the lengthy GPL header in them. Correct? I don't think it's necessary for those files. The same is probably true for ChangeLog, NEWS, and documentation/ChangeLog.cvsimport, etc.
Yes it is not necessary, and we need to be careful not to bloat the readability with comments like this. If we want to comment the
The biggest problems I notices so far is the code from IBM and AMD, which says things like "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved"
There is no problem with this. The fact that AMD released these files to the public as GPL does not touch the fact that they own a copyright to it. In fact, in Europe signing over copyrights is impossible as of current law, so these notes are just fine. They read "This part has been sponsored by AMD and they are allowed to make copies of it"
or stuff like:
LICENSED MATERIAL - PROGRAM PROPERTY OF I B M
That alone (which no additional "this is GPL'd" text would make the code non-free and GPL-incompatible, I guess. I hope this can be resolved or clarified somehow.
I would not see a legal regulation to back your assumption. The fact that it is "licensed" does not make it non-free. the license is GPL, because IBM acknowledged making it GPL by contributing to a GPL project.
And that its their property is not an issue. All programs a person writes is that person's property unless the person does the development work on a contractual basis in wich case the contractor owns the property. This is an exciting area of law, but it has absolutely nothing to do with wether LinuxBIOS is GPLed or not.
- I assume this is GPL'd as LinuxBIOS-AMD64.tex is GPL'd. Correct?
src/arch/i386/boot/acpi.c: "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved." which is bad as it means it's NOT GPL'd and you cannot use it for anything
where does it say that it is not GPL? Could not find the paragraph you are talking about. Search the mailinglist archives for details on above code.
really. No explicit permissions means you have no rights according to international copyright laws, AFAIK (but I'm no lawyer).
The "opus" (Werk) as such is explicitly GPL licensed, so the GPL applies for every single line of code. I am not a lawyer either but I asked mine.
The single parts of the opus are of no more concern. Be it a file, a subdirectory or a single line of the opus. They are all subordinated.
So unless we have an indication stating something different I suggest what we do is emphasize that the whole of LinuxBIOS is GPL licensed by the respective copyright holders.
To make things clearer, I also suggest removing license descriptions from every single source file in the tree and only have a single license file stating the only valid project license. this way there will not be confusion and we dont bloat the code with comments that dont comment the code.
In case of such an indication we will immediately remove the code from the repository.
Comments?
Stefan
Any files in the PPC tree I either wrote myself (hence are released under the GPL) or I obtained from the u-boot project (http://u- boot.sourceforge.net/) which is also GPL'd. The weird licenses were already in the files. If someone wants to go and tidy them all up then feel free.
Greg
On Aug 29, 2006, at 10:33 AM, Stefan Reinauer wrote:
Hi Uwe,
thank you very much for your acribic arduousness.
I hope I can lower your apprehensions in this case a bit:
- Uwe Hermann uwe@hermann-uwe.de [060829 12:16]:
I've started looking at _all_ files in svn and checking their respective license to see if it's GPL'd or at least has another Free Software license. Also, all such licenses must be GPL compatible, too, AFAIK (but I'm no lawyer).
The answer here is easy. Every line of LinuxBIOS code is GPL. And every line of code we will include in the future will become GPL by the implicit agreement of the contributor to use LinuxBIOS and to enhance it.
and b) for the legal status of the LinuxBIOS project itself, as any non-free-software/non-gpl-compatible code in the repository would probably be illegal to distribute (depending on the exact license terms), may cause all kinds of other legal hassle and just simply compromise the whole idea of the project - to have a _free_ implementation.
This is why we have been doing code reviews and have been in close contact with the contributors to make sure we do not include otherwise licensed or protected code.
So here I am, reading through all files, taking notes which of them are not GPL'd. Please check the list and clarify the exact license status of the files, e.g. by adding a GPL header similar to this one below:
All of them are GPLed, as a consequence of the inclusion in LinuxBIOS. Also, files do not need a header stating their license, as the license is absolutely obvious to everyone downloading the code. We might want to have them in most files anyways.
I'm happy to provide patches which add the above license header to all files, but someone has to tell me who wrote the code, when, and which license applies (if that's not obvious from the code).
I noticed that many files do not have any license header at all (some don't even say who the author is); such files have an unclear status and must be considered non-free usually, so in cases where that's just an oversight, please add a respective license note.
No they must not. Who would say they must? Legally absolutely obvious that the files have been checked by those with checkin capabilities to be free.
An example: Not every song on a CD needs a copyright note spoken before the song starts. it is completely sufficient to print the copyright once on the CD.
If the file was taken from another project, please add a note saying so, and mention the license of that project in the file.
As we are using GPL as the license, only files with GPL license or with licenses compatible to the GPL license have been included. All files in the repository are licensed under the GPL. No exceptions.
Assumption: All *.lb config files are GPL'd even though they don't have the lengthy GPL header in them. Correct? I don't think it's necessary for those files. The same is probably true for ChangeLog, NEWS, and documentation/ChangeLog.cvsimport, etc.
Yes it is not necessary, and we need to be careful not to bloat the readability with comments like this. If we want to comment the
The biggest problems I notices so far is the code from IBM and AMD, which says things like "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved"
There is no problem with this. The fact that AMD released these files to the public as GPL does not touch the fact that they own a copyright to it. In fact, in Europe signing over copyrights is impossible as of current law, so these notes are just fine. They read "This part has been sponsored by AMD and they are allowed to make copies of it"
or stuff like:
LICENSED MATERIAL - PROGRAM PROPERTY OF I B M
That alone (which no additional "this is GPL'd" text would make the code non-free and GPL-incompatible, I guess. I hope this can be resolved or clarified somehow.
I would not see a legal regulation to back your assumption. The fact that it is "licensed" does not make it non-free. the license is GPL, because IBM acknowledged making it GPL by contributing to a GPL project.
And that its their property is not an issue. All programs a person writes is that person's property unless the person does the development work on a contractual basis in wich case the contractor owns the property. This is an exciting area of law, but it has absolutely nothing to do with wether LinuxBIOS is GPLed or not.
- I assume this is GPL'd as LinuxBIOS-AMD64.tex is GPL'd. Correct?
src/arch/i386/boot/acpi.c: "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved." which is bad as it means it's NOT GPL'd and you cannot use it for anything
where does it say that it is not GPL? Could not find the paragraph you are talking about. Search the mailinglist archives for details on above code.
really. No explicit permissions means you have no rights
according to international copyright laws, AFAIK (but I'm no lawyer).
The "opus" (Werk) as such is explicitly GPL licensed, so the GPL applies for every single line of code. I am not a lawyer either but I asked mine.
The single parts of the opus are of no more concern. Be it a file, a subdirectory or a single line of the opus. They are all subordinated.
So unless we have an indication stating something different I suggest what we do is emphasize that the whole of LinuxBIOS is GPL licensed by the respective copyright holders.
To make things clearer, I also suggest removing license descriptions from every single source file in the tree and only have a single license file stating the only valid project license. this way there will not be confusion and we dont bloat the code with comments that dont comment the code.
In case of such an indication we will immediately remove the code from the repository.
Comments?
Stefan
-- linuxbios mailing list linuxbios@linuxbios.org http://www.openbios.org/mailman/listinfo/linuxbios
On Tue, Aug 29, 2006 at 06:33:31PM +0200, Stefan Reinauer wrote:
The answer here is easy. Every line of LinuxBIOS code is GPL.
It seems that the standard for GPLed projects is to include the boilerplate in all the source files. For example, the GPL v2 says:
| To do so, attach the following notices to the program. It is safest | to attach them to the start of each source file to most effectively | convey the exclusion of warranty; and each file should have at least | the "copyright" line and a pointer to where the full notice is found.
Why should LinuxBIOS do different?
-- greg
Hi,
On Tue, Aug 29, 2006 at 06:33:31PM +0200, Stefan Reinauer wrote:
The answer here is easy. Every line of LinuxBIOS code is GPL. And every line of code we will include in the future will become GPL by the implicit agreement of the contributor to use LinuxBIOS and to enhance it.
I agree, _if_ the code is contributed willingly and knowingly by the third-party, _and_ that fact is documented in the file (by adding a copyright line and the GPL license header).
It's an entirely different situation if the code was taken from some other project, in which case it's not necessarily GPL'd.
This is why we have been doing code reviews and have been in close contact with the contributors to make sure we do not include otherwise licensed or protected code.
That's great to hear!
All of them are GPLed, as a consequence of the inclusion in LinuxBIOS. Also, files do not need a header stating their license, as the license is absolutely obvious to everyone downloading the code.
Yes and no. The license of the project might be obvious, but I've come over many GPL'd projects which are not actually 100% GPL'd even if they say so. Many contained files from some other sources which were copied in the code-base and had no proper license, or a non-free one...
It's very important in my opinion that every file states the exact year, copyright owner, and license of the code.
* Year, because this may become relevant in jurisdictions which have laws that (for example) code becomes public domain after X years etc.
* Copyright owner, so that everyone knows whom to contact in case of legal questions, license questions etc. etc.
* License, so that it's clear under which license terms the file may be distributed. Even for the "normal case" of the GPL this is important, as it makes a difference whether the respective contributor licensed his code under the terms of the "GPL, version 2 (or any later version)" or "GPL, version 2" (or version 1, or version 3 in future). AFAIK "GPL, version 2 (or any later version)" and "GPL, version 2" are compatible, but version 2 and 3 might not be, for example...
I've seen both variants (v2, and v2 or later) in the code, so maybe that should be standardized (by asking all contributors of one variant if they agree to relicensing their code to the other variant).
Maybe some FSF people on this list can comment on this issue.
I noticed that many files do not have any license header at all (some don't even say who the author is); such files have an unclear status and must be considered non-free usually, so in cases where that's just an oversight, please add a respective license note.
No they must not. Who would say they must? Legally absolutely obvious that the files have been checked by those with checkin capabilities to be free.
The problem is that no license header means you cannot be sure whether the file is GPL'd or was simply copied from some other project and didn't have a license header there either, or the header was removed when copying the file (which is always a bad idea).
Therefore I think it's a lot better to add a license note to _all_ source code files, just to make things perfectly clear and to prevent guess-work and having to ask around, or search svn commit logs or mailinglists just to find out which license applies.
If the file was taken from another project, please add a note saying so, and mention the license of that project in the file.
As we are using GPL as the license, only files with GPL license or with licenses compatible to the GPL license have been included. All files in the repository are licensed under the GPL. No exceptions.
Well, except for the ones which say something different, of course. Say there was a BSD-licensed file in the repository (I don't know if there really is one). That file will remain BSD-licensed, of course, no matter what the license of the LinuxBIOS project is. It's just the fact that the (revised) BSD license is GPL-compatible that would make it possible to use the code in LinuxBIOS. But it would still be BSD-licensed.
The biggest problems I notices so far is the code from IBM and AMD, which says things like "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved"
There is no problem with this. The fact that AMD released these files to the public as GPL does not touch the fact that they own a copyright to it. In fact, in Europe signing over copyrights is impossible as of current law, so these notes are just fine.
That's entirely correct. Copyright is a different concept from a license, and in Germany (maybe other parts of Europe) you cannot re-assign copyright ("Urheberrecht", actually) to other people.
It's perfectly fine that AMD has the copyright, as long as the code is licensed under the terms of the GPL.
It's the "All Rights Reserved" that makes me nervous. If that would read "This file is licensed under the GPL" (or better just the usual GPL header was there), everything would be fine. The current text in there is at least confusing, maybe even worse. It simply doesn't state _any_ license which applies to the code.
or stuff like:
LICENSED MATERIAL - PROGRAM PROPERTY OF I B M
That alone (which no additional "this is GPL'd" text would make the code non-free and GPL-incompatible, I guess. I hope this can be resolved or clarified somehow.
I would not see a legal regulation to back your assumption. The fact that it is "licensed" does not make it non-free. the license is GPL, because IBM acknowledged making it GPL by contributing to a GPL project.
If that's the case, great! Then it's just a matter of making this clear in the file.
The text as it is right now, is confusing and doesn't state that the code is GPL'd. It rather sounds very restrictive and from reading just that text, I'd have severe doubts whether I can legally include it in a GPL'd project.
src/arch/i386/boot/acpi.c: "Copyright 2005 ADVANCED MICRO DEVICES, INC. All Rights Reserved." which is bad as it means it's NOT GPL'd and you cannot use it for anything
where does it say that it is not GPL? Could not find the paragraph you are talking about.
It doesn't state _that_ it's GPL'd, which is should.
So unless we have an indication stating something different I suggest what we do is emphasize that the whole of LinuxBIOS is GPL licensed by the respective copyright holders.
Sure, that should definately be done (for example in a README file). It should say which license applies to the code written explicitly for LinuxBIOS, and that some parts (taken from other projects) may have different (but GPL-compatible) licenses.
It should also state very clearly whether the code is licensed under the "GPL, version 2 (or any later version)" or "GPL, version 2".
To make things clearer, I also suggest removing license descriptions from every single source file in the tree and only have a single license file stating the only valid project license.
Please don't.
I'm pretty sure single files will some day be copied and incorporated into other GPL projects, therefore it's important to have the copyright and license lines in each file.
I'd rather do the opposite - add a license header to all files which don't yet have one. Disk space is cheap, and legal clarity should be more important than a slightly larger code base.
If you absolutely must, I'd rather use something short, e.g.
Copyright 200x John Doe This code is licensed under the GPL, version 2 (or any later version)
than no license header at all.
HTH, Uwe.