<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.nftables.org/wiki-nftables/index.php?action=history&amp;feed=atom&amp;title=Portal%3ADeveloperDocs%2FPatch_submission_guidelines</id>
	<title>Portal:DeveloperDocs/Patch submission guidelines - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.nftables.org/wiki-nftables/index.php?action=history&amp;feed=atom&amp;title=Portal%3ADeveloperDocs%2FPatch_submission_guidelines"/>
	<link rel="alternate" type="text/html" href="http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;action=history"/>
	<updated>2026-06-09T22:11:26Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=422&amp;oldid=prev</id>
		<title>Arturo: /* See also */ add link to patchwork</title>
		<link rel="alternate" type="text/html" href="http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=422&amp;oldid=prev"/>
		<updated>2019-07-14T13:09:07Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;See also: &lt;/span&gt; add link to patchwork&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:09, 14 July 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l232&quot;&gt;Line 232:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 232:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Portal:DeveloperDocs/Development_environment | Development environment]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Portal:DeveloperDocs/Development_environment | Development environment]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Portal:DeveloperDocs/Contributing | Contributing]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Portal:DeveloperDocs/Contributing | Contributing]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [http://patchwork.ozlabs.org/project/netfilter-devel/list/ patchwork patch management system]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb_nftables:diff:1.41:old-421:rev-422:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Arturo</name></author>
	</entry>
	<entry>
		<id>http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=421&amp;oldid=prev</id>
		<title>Arturo: bold sentence about git and linux coding style</title>
		<link rel="alternate" type="text/html" href="http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=421&amp;oldid=prev"/>
		<updated>2019-07-14T13:07:16Z</updated>

		<summary type="html">&lt;p&gt;bold sentence about git and linux coding style&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:07, 14 July 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l10&quot;&gt;Line 10:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 10:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;That&amp;#039;s why we have some rules we would like to highlight.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;That&amp;#039;s why we have some rules we would like to highlight.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;And in a nutshell, we use git and we follow Linux Kernel patch submission process and coding style.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;And in a nutshell, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;we use git and we follow Linux Kernel patch submission process and coding style&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Rules =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Rules =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb_nftables:diff:1.41:old-416:rev-421:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Arturo</name></author>
	</entry>
	<entry>
		<id>http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=416&amp;oldid=prev</id>
		<title>Arturo: refresh page with interlinks etc</title>
		<link rel="alternate" type="text/html" href="http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=416&amp;oldid=prev"/>
		<updated>2019-07-14T12:57:29Z</updated>

		<summary type="html">&lt;p&gt;refresh page with interlinks etc&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:57, 14 July 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l24&quot;&gt;Line 24:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Include documentation updates within the patch-series.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Include documentation updates within the patch-series.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Include test-suites updates within the patch-series.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Include test-suites updates within the patch-series.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# If you have doubts about formatting a patch, look at others commit/patches. There are plenty of examples. If you still have doubts, ask in the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Mailing lists | &lt;/del&gt;mailing list&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/del&gt;. But ask after doing your homework, i.e. trying yourself.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# If you have doubts about formatting a patch, look at others commit/patches. There are plenty of examples. If you still have doubts, ask in the mailing list. But ask after doing your homework, i.e. trying yourself.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Use an email address which is reachable for replies, i.e. don&amp;#039;t submit patches from &amp;#039;&amp;#039;root@myserver.example.com&amp;#039;&amp;#039;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Use an email address which is reachable for replies, i.e. don&amp;#039;t submit patches from &amp;#039;&amp;#039;root@myserver.example.com&amp;#039;&amp;#039;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Be patient after submitting a patch. Don&amp;#039;t expect same day replies. Ping after a week or so.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Be patient after submitting a patch. Don&amp;#039;t expect same day replies. Ping after a week or so.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l226&quot;&gt;Line 226:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 226:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Please, read this useful information:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Please, read this useful information:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Bug reporting]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Portal:DeveloperDocs/Bug_reporting | &lt;/ins&gt;Bug reporting]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://git-scm.com/ Git main website]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://git-scm.com/ Git main website]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst Linux Kernel docs - coding style]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst Linux Kernel docs - coding style]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst Linux Kernel docs - submitting patches]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst Linux Kernel docs - submitting patches]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Development environment]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Portal:DeveloperDocs/Development_environment | &lt;/ins&gt;Development environment]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Contributing&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Portal:DeveloperDocs/Contributing | &lt;/ins&gt;Contributing]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Mailing lists]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Licensing&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb_nftables:diff:1.41:old-406:rev-416:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Arturo</name></author>
	</entry>
	<entry>
		<id>http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=406&amp;oldid=prev</id>
		<title>Arturo: create page</title>
		<link rel="alternate" type="text/html" href="http://wiki.nftables.org/wiki-nftables/index.php?title=Portal:DeveloperDocs/Patch_submission_guidelines&amp;diff=406&amp;oldid=prev"/>
		<updated>2019-07-14T12:25:04Z</updated>

		<summary type="html">&lt;p&gt;create page&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Submitting patches is one of the main ways to contributing to the Netfilter project.&lt;br /&gt;
We try to follow common patterns in order to put some order in our work.&lt;br /&gt;
&lt;br /&gt;
Sometimes reviewing patches and maintaining software written collaboratively can be difficult.&lt;br /&gt;
We would like to keep the review process simple. Also, maintainers needs to understand what your change is about.&lt;br /&gt;
In some cases, in the future, the patch may be reverted or reworked. Or simply, someone would need to understand it out of context.&lt;br /&gt;
Take into account that there are people following the development only by reading commit messages and not the code itself.&lt;br /&gt;
This is the reason that commit messages should be accurate.&lt;br /&gt;
&lt;br /&gt;
That&amp;#039;s why we have some rules we would like to highlight.&lt;br /&gt;
&lt;br /&gt;
And in a nutshell, we use git and we follow Linux Kernel patch submission process and coding style.&lt;br /&gt;
&lt;br /&gt;
= Rules =&lt;br /&gt;
&lt;br /&gt;
Please, stick to these rules:&lt;br /&gt;
&lt;br /&gt;
# Every patch should be well formatted (see &amp;#039;&amp;#039;&amp;#039;Commit style&amp;#039;&amp;#039;&amp;#039; below).&lt;br /&gt;
# Don&amp;#039;t submit untested patches. You should test your patches and prove they work before sending them out. If you are sharing just an idea, untested, state that clearly in the commit message.&lt;br /&gt;
# Put related patches in a patch series. This way maintainers know that they all go together.&lt;br /&gt;
# Don&amp;#039;t patch-bomb, i.e. don&amp;#039;t submit 50 patches in a row. Split patch series in small chunks if possible.&lt;br /&gt;
# Use one commit/patch for each logical change. Don&amp;#039;t mix different things in the same patch. This eases the review process.&lt;br /&gt;
# The repository should be keep consistent between commits, i.e. try to don&amp;#039;t introduce changes that breaks the code for no reason.&lt;br /&gt;
# Include documentation updates within the patch-series.&lt;br /&gt;
# Include test-suites updates within the patch-series.&lt;br /&gt;
# If you have doubts about formatting a patch, look at others commit/patches. There are plenty of examples. If you still have doubts, ask in the [[Mailing lists | mailing list]]. But ask after doing your homework, i.e. trying yourself.&lt;br /&gt;
# Use an email address which is reachable for replies, i.e. don&amp;#039;t submit patches from &amp;#039;&amp;#039;root@myserver.example.com&amp;#039;&amp;#039;.&lt;br /&gt;
# Be patient after submitting a patch. Don&amp;#039;t expect same day replies. Ping after a week or so.&lt;br /&gt;
# Always submit fixes &amp;#039;&amp;#039;&amp;#039;first&amp;#039;&amp;#039;&amp;#039; in a patch series. This way they could be applied independently of the rest of the series.&lt;br /&gt;
&lt;br /&gt;
= Commit style =&lt;br /&gt;
&lt;br /&gt;
A patch contains some metadata which is really important for us. This metadata is mainly 3 elements: title, description and Signed-off-by: lines.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
src: fix use after free bug&lt;br /&gt;
&lt;br /&gt;
Due to this code branch never being tested before, there was a hidden user-after-free bug.&lt;br /&gt;
Fix it now and include some test cases to execute this code path.&lt;br /&gt;
&lt;br /&gt;
Signed-off-by: One Developer &amp;lt;onedeveloper@example.com&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Title ==&lt;br /&gt;
&lt;br /&gt;
Should give context of what component is being updated. Just by reading the title, the reader should be able to know &amp;#039;&amp;#039;what&amp;#039;&amp;#039; you are touching.&lt;br /&gt;
&lt;br /&gt;
A good idea is to follow this pattern:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
component: subcomponent: message&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the patch is a fix, include the  &amp;#039;&amp;#039;&amp;#039;fix&amp;#039;&amp;#039;&amp;#039; word as the first one in the message:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
component: subcomponent: fix [...]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are touching the whole project code, use the project name as component:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nftables: switch all source code from C to Java&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Other examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
expr: drop unused code&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
evaluate: introduce extra step to verify whatever&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
main: config: cleanup warning messages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Message ==&lt;br /&gt;
&lt;br /&gt;
The message of the patch should contain a complete explanation of what are you doing, since this may not be obvious from reading the code.&lt;br /&gt;
You should justify the change as well. Include results of tests if applicable.&lt;br /&gt;
&lt;br /&gt;
Some examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
The code was not fast enough causing the system to block.&lt;br /&gt;
Solve this by implementing the algorithm foo.&lt;br /&gt;
&lt;br /&gt;
Previous to this patch, an execution takes 100ms&lt;br /&gt;
After this patch, the same execution takes 10ms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Again, be explicit in this description. People unfamiliar with the codebase could be reading.&lt;br /&gt;
&lt;br /&gt;
== Footer lines ==&lt;br /&gt;
&lt;br /&gt;
All commits should contain at least one &amp;#039;Signed-off-by:&amp;#039; line. This comes directly from the Linux Kernel submission guidelines and indicates&lt;br /&gt;
that you are responsible of the code you are submitting, among other things.&lt;br /&gt;
&lt;br /&gt;
Other footer lines you should include, if applicable:&lt;br /&gt;
&lt;br /&gt;
* Fixing a previous commit, you would likely need:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Fixes: be441e1ffdc24 (&amp;quot;src: add debugging mask to context structure&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Fixing a bugzilla bug, you would use:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1145&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* If someone give additional testing to your patch:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Tested-by: Someone &amp;lt;someone@example.com&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* If someone ACK your change:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Acked-by: Someone &amp;lt;someone@example.com&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* If the change was suggested by other person&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Suggested-by: Other Person &amp;lt;other@example.com&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* If you fix a bug thanks to the report of someone else, give credits to that person!&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Reported-by: Someone Else &amp;lt;else@example.com&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
These are great real-life examples of commit/patch:&lt;br /&gt;
&lt;br /&gt;
http://git.netfilter.org/nftables/commit/?id=bada2f9c182dddf72a6d3b7b00c9eace7eb596c3&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
evaluate: merge nested set flags&lt;br /&gt;
&lt;br /&gt;
A set may contain a nested set element definition, merge the nested set&lt;br /&gt;
flags so we don&amp;#039;t hit:&lt;br /&gt;
&lt;br /&gt;
 BUG: invalid data expression type range&lt;br /&gt;
 nft: netlink.c:400: netlink_gen_data: Assertion `0&amp;#039; failed.&lt;br /&gt;
 Aborted&lt;br /&gt;
&lt;br /&gt;
With the following example ruleset:&lt;br /&gt;
&lt;br /&gt;
 define dnat_ports      = { 1234-1567 }&lt;br /&gt;
 define port_allow      = {&lt;br /&gt;
        53,             # dns&lt;br /&gt;
        $dnat_ports,    # dnat&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 add rule x y tcp dport $port_allow accept&lt;br /&gt;
&lt;br /&gt;
Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1145&lt;br /&gt;
Fixes: a6b75b837f5e (&amp;quot;evaluate: set: Allow for set elems to be sets&amp;quot;)&lt;br /&gt;
Signed-off-by: Pablo Neira Ayuso &amp;lt;pablo@netfilter.org&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://git.netfilter.org/nftables/commit/?id=4ae0b6dc90d16b4d93a4e8b6703f23dcf2467b85&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
statement: fix print of ip dnat address&lt;br /&gt;
&lt;br /&gt;
the change causes non-ipv6 addresses to not be printed at all in case&lt;br /&gt;
a nfproto was given.&lt;br /&gt;
&lt;br /&gt;
Also add a test case to catch this.&lt;br /&gt;
&lt;br /&gt;
Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1117&lt;br /&gt;
Fixes: 5ab0e10fc6e2c22363a (&amp;quot;src: support for RFC2732 IPv6 address format with brackets&amp;quot;)&lt;br /&gt;
Signed-off-by: Florian Westphal &amp;lt;fw@strlen.de&amp;gt;&lt;br /&gt;
Acked-by: Pablo Neira Ayuso &amp;lt;pablo@netfilter.org&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Patch series =&lt;br /&gt;
&lt;br /&gt;
If you submit several changes in a row which are related, consider using a patch series.&lt;br /&gt;
A cover letter is usually recommended, but not always required. You can skip the cover letter if&lt;br /&gt;
the patch series is small (2-5 patches) and each individual patch is small and well explained.&lt;br /&gt;
&lt;br /&gt;
Writing a cover letter is mandatory if your patch series introduces a really big change to the codebase.&lt;br /&gt;
&lt;br /&gt;
= Email submission =&lt;br /&gt;
&lt;br /&gt;
Git can email things directly if well configured. Please, read some docs on the topic (see &amp;#039;&amp;#039;&amp;#039;External links&amp;#039;&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
Take into account that the email subject should contain a tag like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PATCH] commit title&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should include the repository name in this tag:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[nft PATCH] commit title&lt;br /&gt;
[libnftnl PATCH] commit title&lt;br /&gt;
[conntrack-tools PATCH] commit title&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, if you are in a series, the tag will include some additional numbers:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[nft PATCH 1/3] commit title&lt;br /&gt;
[nft PATCH 2/3] commit title&lt;br /&gt;
[libnftnl PATCH 3/3] commit title&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your patch is a RFC (just an idea, request for comments), include that as well:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[RFC nft PATCH 1/2] commit title&lt;br /&gt;
[RFC nft PATCH 2/2] commit title&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you version your patchset (i.e. changes are requested or whatever), state that as well:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[nft PATCH 1/2 v2] commit title&lt;br /&gt;
[nft PATCH 2/2 v2] commit title&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this last case, some changelog should be included before the diffstat included in the patch.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
Please, read this useful information:&lt;br /&gt;
&lt;br /&gt;
* [[Bug reporting]]&lt;br /&gt;
* [https://git-scm.com/ Git main website]&lt;br /&gt;
* [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst Linux Kernel docs - coding style]&lt;br /&gt;
* [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst Linux Kernel docs - submitting patches]&lt;br /&gt;
* [[Development environment]]&lt;br /&gt;
* [[Contributing]]&lt;br /&gt;
* [[Mailing lists]]&lt;br /&gt;
* [[Licensing]]&lt;/div&gt;</summary>
		<author><name>Arturo</name></author>
	</entry>
</feed>