next up previous contents
Next: How to become the Up: Related topics Previous: KLive   Contents

Sending patches

If you want to submit a kernel patch fixing a bug that you have found, first read the file Documentation/SubmittingPatches in the kernel source three. In particular, pay attention to SECTION 3 - REFERENCES containing references to the documents that you should get familiar with before sending the patch.

You also will need to know how to prevent your mail client from mangling patches by adding or removing white space, or by applying the quoted printable encoding to them. Some mail clients, like Mozilla Thunderbird, tend to modify white space on the fly in an unpredictable ways, so you need to change their default configurations to send patches. For instance, in Thunderbird it usually is sufficient to install the extention for email encryption to get rid of such problems (anyway, if you want to use Thunderbird for sending patches, read http://mbligh.org/linuxdocs/Email/Clients/Thunderbird).

For sending a series of patches you can use the script available at http://www.aepfle.de/scripts/42_send_patch_mail.sh . If you do not have the time for figuring out how it works yourself, follow the steps below:

Now, you need to create the description file that will be sent as the first message in the series (ie. the one with [PATCH 0/x] in the subject line). Its format should be as follows:
Subject: <Title of the series of patches>
To: <destination email address>
CC: <comma separated list of additional destination email addresses>

Description of patches in the series, diffstat etc.
Next, similar header has to be added at the beginning of each patch and you need to create a series file for your patchset, the format and contents of which should be the same as for the series file used by quilt (see Section 4.2). Finally, to send the patches run
$ 42_send_patch_mail.sh -d <description file> -s <series file>

Alternatively, you can send the series of patches with the help of the script available at http://www.speakeasy.org/~pj99/sgi/sendpatchset, having the advantage that mutt and the MTA are not needed for it to work. It is sufficient to create a special control file of the following format:

SMTP: adress of your SMTP server
From: your name <your email address>
To: Destination <destination email address>
Cc: Someone else <email address>
Cc: Someone else <email address>
[...]
Subject: [PATCH 1/n] Title of the first patch
File: path to the first patch file
[...]
Subject: [PATCH n/n] Title of the nth patch
File: path to the nth patch file
(note that the < and > braces above are mandatory). Next, to send the patches, you only need to run
$ sendpatchset control


next up previous contents
Next: How to become the Up: Related topics Previous: KLive   Contents
MichaƂ Piotrowski 2007-06-21