<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.openvz.org/index.php?action=history&amp;feed=atom&amp;title=Download%2Fkernel%2F2.6.16%2F026test018.1%2Fchanges</id>
	<title>Download/kernel/2.6.16/026test018.1/changes - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.openvz.org/index.php?action=history&amp;feed=atom&amp;title=Download%2Fkernel%2F2.6.16%2F026test018.1%2Fchanges"/>
	<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;action=history"/>
	<updated>2026-06-10T01:48:11Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=7687&amp;oldid=prev</id>
		<title>Kir: Protected &quot;Download/kernel/2.6.16/026test018.1/changes&quot;: Robot: Protecting a list of files. [edit=autoconfirmed:move=autoconfirmed]</title>
		<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=7687&amp;oldid=prev"/>
		<updated>2009-10-22T18:16:13Z</updated>

		<summary type="html">&lt;p&gt;Protected &amp;quot;&lt;a href=&quot;/Download/kernel/2.6.16/026test018.1/changes&quot; title=&quot;Download/kernel/2.6.16/026test018.1/changes&quot;&gt;Download/kernel/2.6.16/026test018.1/changes&lt;/a&gt;&amp;quot;: Robot: Protecting a list of files. [edit=autoconfirmed:move=autoconfirmed]&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 18:16, 22 October 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Kir</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=5138&amp;oldid=prev</id>
		<title>Kir: added empty line</title>
		<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=5138&amp;oldid=prev"/>
		<updated>2008-03-21T08:19:18Z</updated>

		<summary type="html">&lt;p&gt;added empty line&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:19, 21 March 2008&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-l11&quot; &gt;Line 11:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 11:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;{{Kernel git log|2.6.16|026test018}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;{{Kernel git log|2.6.16|026test018}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;includeonly&amp;gt;[[{{PAGENAME}}/changes#Patches|{{Long changelog message}}]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;includeonly&amp;gt;[[{{PAGENAME}}/changes#Patches|{{Long changelog message}}]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;=== Patches ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;=== Patches ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key openvzwikidb:diff::1.12:old-5137:rev-5138 --&gt;
&lt;/table&gt;</summary>
		<author><name>Kir</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=5137&amp;oldid=prev</id>
		<title>Kir: added link to git changelog</title>
		<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=5137&amp;oldid=prev"/>
		<updated>2008-03-21T08:18:03Z</updated>

		<summary type="html">&lt;p&gt;added link to git changelog&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:18, 21 March 2008&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-l9&quot; &gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;* Mainstream update up to 2.6.16.29.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;* Mainstream update up to 2.6.16.29.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;* Code cleanups from sparse.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;* Code cleanups from sparse.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;{{Kernel git log|2.6.16|026test018}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;includeonly&amp;gt;[[{{PAGENAME}}/changes#Patches|{{Long changelog message}}]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;includeonly&amp;gt;[[{{PAGENAME}}/changes#Patches|{{Long changelog message}}]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;=== Patches ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;=== Patches ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key openvzwikidb:diff::1.12:old-5136:rev-5137 --&gt;
&lt;/table&gt;</summary>
		<author><name>Kir</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=5136&amp;oldid=prev</id>
		<title>Kir: created</title>
		<link rel="alternate" type="text/html" href="https://wiki.openvz.org/index.php?title=Download/kernel/2.6.16/026test018.1/changes&amp;diff=5136&amp;oldid=prev"/>
		<updated>2008-03-21T08:16:46Z</updated>

		<summary type="html">&lt;p&gt;created&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Changes ==&lt;br /&gt;
* UBC optimisations&lt;br /&gt;
* CPT fixes and updates from stable branch.&lt;br /&gt;
* Dynamic VCPU control&lt;br /&gt;
* VE mass stop speedup&lt;br /&gt;
* Loopback statistics&lt;br /&gt;
* Compilations fixes&lt;br /&gt;
* sysfs ptmx virtualization.&lt;br /&gt;
* Mainstream update up to 2.6.16.29.&lt;br /&gt;
* Code cleanups from sparse.&lt;br /&gt;
&amp;lt;includeonly&amp;gt;[[{{PAGENAME}}/changes#Patches|{{Long changelog message}}]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-annoying-printk ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] remove annoying printk&lt;br /&gt;
&lt;br /&gt;
In 2.6.9 printk(&amp;quot;=&amp;quot;) in refrigerator() is commented out.&lt;br /&gt;
We should remove printk(&amp;quot;&amp;amp;gt;\n&amp;quot;) in cpt. The code with comment&lt;br /&gt;
is not removed, but commented out to remember that we have to&lt;br /&gt;
return this, if the printk in refrigerator() is uncommented.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-asmlinkage ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] asmlinkage attribute was forgotten&lt;br /&gt;
&lt;br /&gt;
This fixes CPT with CONFIG_REGPARAM compiled&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-caps-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] capabilities check fixes&lt;br /&gt;
&lt;br /&gt;
* namespace-&amp;amp;gt;sem is replaced with namespace_sem;&lt;br /&gt;
* task-&amp;amp;gt;used_math is replaced with tsk_used_math().&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-checks-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch adds checking for unsupported CPT features.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-clone-zombie ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] restoring threads with tsk-&amp;amp;gt;fs==NULL&lt;br /&gt;
&lt;br /&gt;
If a nptl thread is ptraced, it does not die immediately&lt;br /&gt;
and we can arrive to the state:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  parent&lt;br /&gt;
      |&lt;br /&gt;
  main_thread    -----&amp;gt; thread1 [ptraced]&lt;br /&gt;
  in TASK_ZOMBIE        in TASK_ZOMBIE&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restore such configuration we do kernel_thread(CLONE_SIGNAL)&lt;br /&gt;
in context of main_thread. But if it is exited, it has tsk-&amp;amp;gt;fs == NULL&lt;br /&gt;
and kernel oopes.&lt;br /&gt;
&lt;br /&gt;
Suggested fix is very simple: we just attach temporary fs_struct&lt;br /&gt;
from init task of VE. Also, we have to delay initialization of&lt;br /&gt;
tsk-&amp;amp;gt;group_exit,&lt;br /&gt;
otherwise kernel will not allow us to clone.&lt;br /&gt;
&lt;br /&gt;
This fix is pragmatic.&lt;br /&gt;
&lt;br /&gt;
Better fix would be restructuring of restore to delay zombification&lt;br /&gt;
until the last stage of restore. I.e. we could restore all the tree&lt;br /&gt;
of alive processes with all the attributes of alive task (fs, mm etc).&lt;br /&gt;
And after it is complete, we could make one more pass and collect garbage&lt;br /&gt;
killing zombie tasks and clearing fs, mm etc. It would be cleaner&lt;br /&gt;
and safer, but requires too much of changes.&lt;br /&gt;
&lt;br /&gt;
Bug #65219.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-core-misc-2 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Removed hunks after optimisation patches&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-func-declaration-fix-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] Don't leave function argument list empty - use 'void'&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-ifindex-renumber-2.6.16-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
This patch adds renumbering of netdev-&amp;amp;gt;ifindex'es on restore process.&lt;br /&gt;
We can do this because network is suspended. All manipulations are&lt;br /&gt;
protected with rtnl_lock().&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-iptables-path ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch fixes iptables save/restore on SUSE.&lt;br /&gt;
&lt;br /&gt;
Bug #62837.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-kernel-dpath-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Export and unstatic __d_path() call for CPT capability checks.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-mm-eagain-20060817 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
In tests we can see message: &amp;quot;mm_struct is referenced outside&amp;quot;&lt;br /&gt;
After that message checkpoint fails.&lt;br /&gt;
&lt;br /&gt;
It seems that this situation is legal, so checkpoint could be restarted.&lt;br /&gt;
So we return -EAGAIN to be able to restart checkpoint.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-net-ifindex-cleanup-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch removes renumbering of ifindexes of venet and loopback&lt;br /&gt;
devices on restore.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-net-lock-20060727 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Network devices list were not protected while checkpoining.&lt;br /&gt;
&lt;br /&gt;
This patch adds necessary protection.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-ptraceme-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] SMP race in detecting state of ptraced processes&lt;br /&gt;
&lt;br /&gt;
When suspending VE, we test state of processes while they are&lt;br /&gt;
still running. It is not a bug: we have to verify for invalid state&lt;br /&gt;
before checkpointing, real state is saved after processes are scheduled&lt;br /&gt;
out.&lt;br /&gt;
&lt;br /&gt;
The impact is that we can see process in a bad state, f.e. stopped&lt;br /&gt;
without any reasons. It is also not a bug, but this rersults in random&lt;br /&gt;
failures of checkpointing. The only way to fix this is to order updates&lt;br /&gt;
of state variables. The order is correct almost everywhere.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-restore-mnt-flags-20060831 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Mount point's mnt_flags (noexec,nosuid,nodev) were omitted and&lt;br /&gt;
not restored correctly.&lt;br /&gt;
&lt;br /&gt;
This patch should be applied with patch for bind mounts&lt;br /&gt;
in other case we should do the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Remove check for bind-mounts in do_remount() function&lt;br /&gt;
&amp;lt;li&amp;gt;Change procedure for restoring bind-mounts in next way:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     do_mount(bind);&lt;br /&gt;
     do_remount(mnt_flags).&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-rst-dir ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] do not keep open cwd while restore&lt;br /&gt;
&lt;br /&gt;
&amp;amp;gt;&amp;amp;gt;From the viewpoint of CPT, cwd/root are very similar to an open&lt;br /&gt;
file, it is just pair dentry/mnt. Normally, when opening some file&lt;br /&gt;
we store it and its inode in special object cache to resolve opening&lt;br /&gt;
of the same inode, when some of its aliases (dentries) are deleted.&lt;br /&gt;
&lt;br /&gt;
But it is useless for directories, which cannot be hardlinked ever.&lt;br /&gt;
And this consumes numfile UBC, so that restore can fail easily.&lt;br /&gt;
So, do not store cwd/root file, unless it is deleted. This does not&lt;br /&gt;
solve problem with restoring VE hitting numfiles, but relieves it a lot.&lt;br /&gt;
&lt;br /&gt;
Now we can temporarily increase numfile limit while cpt/rst by 2 and&lt;br /&gt;
everything should be OK.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-rst-sigdfl-20060830 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&lt;br /&gt;
[CPT] save/restore even SIG_DFL handlers&lt;br /&gt;
&lt;br /&gt;
Linux has a funny feature: when SA_ONESHOT signal resets&lt;br /&gt;
handler, flags are not set to default. And LTP tests verify&lt;br /&gt;
this pathology.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-suid-dumpable ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] restore mm-&amp;amp;gt;dumpable correctly&lt;br /&gt;
&lt;br /&gt;
mm-&amp;amp;gt;dumpable is not boolean in &amp;amp;gt;=2.6.9, but tri-state.&lt;br /&gt;
Just save and restore raw value.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-suspend-cleanup ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kirill Korotaev &amp;amp;lt;dev@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Fix of compilation of diff-cpt-suspend-cleanup.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-susp-printk-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] Remove printk(&amp;quot;|\n&amp;quot;) from refrigerator.&lt;br /&gt;
(#55914)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-tcp-bind-bug-20060831 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] tcp sockets were bind()ed incorrectly during restore&lt;br /&gt;
&lt;br /&gt;
This case was totally missed. Fortunately, this happens rarely.&lt;br /&gt;
&lt;br /&gt;
If checkpoint happens after some listening socket was closed,&lt;br /&gt;
but it left behind some children (including timewait buckets),&lt;br /&gt;
restore fails to bind them, unless the service used SO_REUSEADDR.&lt;br /&gt;
&lt;br /&gt;
Stress checkpointing of LTP tests did not catch this earlier&lt;br /&gt;
only because... I repaired the tests not to fail upon exhaustion&lt;br /&gt;
of port space some time ago. Before that they failed with obvious&lt;br /&gt;
and harmless diagnosis long before the first binding conflict happened.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-ve-features-20060815 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Feature set were not saved in CPT, so VEs based on SUSE template could&lt;br /&gt;
fail after restore (VE_FEATURE_SYSFS was lost). Save feature set in place&lt;br /&gt;
which were not used before (cpt_os_version and cpt_os_features fields in&lt;br /&gt;
image header).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-veth-support-20060616 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] This patch adds veth support in CPT&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-wait-task-cleanup-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] Remove ifdefs around wait_task_inactive()&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-x86_64-debuginfo ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] fix compilation with CONFIG_DEBUG_INFO&lt;br /&gt;
&lt;br /&gt;
Just #undef it.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-cpt-x8664-setpriority ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[CPT] process priority was restored incorrectly on x86_64&lt;br /&gt;
&lt;br /&gt;
Ugly type casting bug. u32 was implicitly casted to long&lt;br /&gt;
and on 64bit archs negative nice values were rejected as&lt;br /&gt;
huge positive ones.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-dbg-show-top-slabs-20060727 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Show info about the largest kmem caches in OOM killer and SysRq-M handler.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-dbg-show-top-slabs-fix-20060727 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Show top slabs functionality comp fixes:&lt;br /&gt;
&lt;br /&gt;
* lock w/o irqsave and flags;&lt;br /&gt;
* correct loop counter;&lt;br /&gt;
* names: objsize -&amp;amp;gt; buffer_size.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-cpuinfo-20060710 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch virtualizes /proc/cpuinfo.&lt;br /&gt;
&lt;br /&gt;
Added sysctl to scale or not cpu frequency inside VE.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-cpuinfo-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Add prototype for ve_scale_khz() in vsched.h (comp)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-dynvcpus-20060623 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kirill Korotaev &amp;amp;lt;dev@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch adds new fairsched syscalls which allows to change number of&lt;br /&gt;
VCPUs inside VE dynamically on the fly.&lt;br /&gt;
&lt;br /&gt;
TODO:&lt;br /&gt;
* per FS-node task list&lt;br /&gt;
* do_fairsched_vcpus: adjust rate&lt;br /&gt;
* __migrate_task doesn't return any error code and can fail&lt;br /&gt;
* empty flag in vcpu_del / synchronize optimization&lt;br /&gt;
* finish diff-cpuinfo&lt;br /&gt;
* /proc file with vcpus field?&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-iowait-20060525 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Dmitry Mishin &amp;amp;lt;dim@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch fixes iowait_time statistics for both VE0 and VEs.&lt;br /&gt;
&lt;br /&gt;
* removes redundant nr_iowait field in VE_CPU_STATS (bug noticed by Matt Loschert)&lt;br /&gt;
* after schedule task may be activated on the another processor.&lt;br /&gt;
&lt;br /&gt;
Port on 2.6.16 by Xemul.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-iowait-fix-20060809 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Compilation fix for nr_iowait_ve() modifications.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-ppcfix-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] fixes the mistype and the formatting in powerpc's show_regs().&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-ppc-syscalls-20060830 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] adds fairsched syscalls for powerpc&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-fairsched-sparse-fixes-20060915 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Cleanups in fairsched code found by sparse&lt;br /&gt;
&lt;br /&gt;
* rq-&amp;amp;gt;push_vcpu = NULL;&lt;br /&gt;
* __user attribute in sysctl handler argument.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-merge-2.6.16.29-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from OpenVZ team &amp;amp;lt;devel@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Merged 2.6.16.29 from /linux/kernel/git/stable/linux-2.6.16.y&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ms-bind-mount-flags-20060816 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Mirkin &amp;amp;lt;amirkin@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
This patch adds support of 3 mount flags to bind mount&lt;br /&gt;
Now we can do bind mounts with noexec, nosuid and nodev options&lt;br /&gt;
w/o need to do remount.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ms-nf-compat-non-x86-20060831 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Patrick McHardy &amp;amp;lt;kaber@trash.net&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[NETFILTER] x_tables: fix compat related crash on non-x86&lt;br /&gt;
&lt;br /&gt;
When iptables userspace adds an ipt_standard_target, it calculates the size&lt;br /&gt;
of the entire entry as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
sizeof(struct ipt_entry) + XT_ALIGN(sizeof(struct ipt_standard_target))&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ipt_standard_target looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
struct xt_standard_target&lt;br /&gt;
{&lt;br /&gt;
      struct xt_entry_target target;&lt;br /&gt;
      int verdict;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
xt_entry_target contains a pointer, so when compiled for 64 bit the&lt;br /&gt;
structure gets an extra 4 byte of padding at the end. On 32 bit&lt;br /&gt;
architectures where iptables aligns to 8 byte it will also have 4&lt;br /&gt;
byte padding at the end because it is only 36 bytes large.&lt;br /&gt;
&lt;br /&gt;
The compat_ipt_standard_fn in the kernel adjusts the offsets by&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
 sizeof(struct ipt_standard_target) -&lt;br /&gt;
     sizeof(struct compat_ipt_standard_target),&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
which will always result in 4, even if the structure from userspace&lt;br /&gt;
was already padded to a multiple of 8. On x86 this works out by&lt;br /&gt;
accident because userspace only aligns to 4, on all other&lt;br /&gt;
architectures this is broken and causes incorrect adjustments to&lt;br /&gt;
the size and following offsets.&lt;br /&gt;
&lt;br /&gt;
Thanks to Linus for lots of debugging help and testing.&lt;br /&gt;
&lt;br /&gt;
Signed-off-by: Patrick McHardy &amp;amp;lt;kaber@trash.net&amp;amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Signed-off-by: Linus Torvalds &amp;amp;lt;torvalds@osdl.org&amp;amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-powerpc-tif-freeze-20060905 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] adds needed TIF_FREEZE define to powerpc&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-softirqd-sparse-20041008 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Added __user attribute to sysctl handler's args in softirqd disabling code&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-dcachecom-20060417 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch fixes currently incorrect comments about locking in dcache.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-dcacheopt-20060906 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Dcachesize accounting optimization.&lt;br /&gt;
&lt;br /&gt;
The accounting becomes conditional, and dentries start to be accounted only&lt;br /&gt;
when a given fraction of normal zone is consumed by dcache. On switching&lt;br /&gt;
accounting on and off, all dentries are walked in stop_machine and charged&lt;br /&gt;
to ub0 or uncharged.&lt;br /&gt;
&lt;br /&gt;
Port for 2.6.16 by Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-fileopt-20060504 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Main part of file accounting optimization.&lt;br /&gt;
&lt;br /&gt;
* files are charged by quants;&lt;br /&gt;
* pre-charged but not used amount is kept in task_beancounter.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-fileopt-2-20060504 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Additional optimizations of file and kmemsize accounting, fixes.&lt;br /&gt;
&lt;br /&gt;
* files are now charged to kmemsize explicitly, not through SLAB_UBC;&lt;br /&gt;
* certain amount of numfile and their kmemsize is precharged at fork;&lt;br /&gt;
* poll tables of small size are not charged at all;&lt;br /&gt;
* get_beancounter_batch and put_beancounter_batch are introduced to adjust refcounts at precharge/uncharge time, in batches, instead of at each allocation/deallocation.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-fileopt-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Take kmem memory usage for file_cachep directly fro cachep.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-filkmemopt-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
More file/kmemsize accounting fixes related to charges/uncharges&lt;br /&gt;
to wrong beancounters, as seen when testing optimisation.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-gfp-type-20060915 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[UBC] Use gfp_t type where appropriate in ub_mem.c&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-kmemopt-20060504 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Start of kmemsize accounting optimization.&lt;br /&gt;
&lt;br /&gt;
* kmemsize is accounted by quants;&lt;br /&gt;
* per-charged amounts are kept in task_beancounter for faster and lockless charge/uncharge operations.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-kmemopt-2-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
File and kmemsize accounting optimization fixes and improvements.&lt;br /&gt;
&lt;br /&gt;
* missing uncharge added;&lt;br /&gt;
* a lot of likely/unlikely added;&lt;br /&gt;
* files are really charged into kmemsize;&lt;br /&gt;
* the problem of atomicity of per-task field is resolved by shifting irq_disable/enable around kmemsize charge calls.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-kmemopt-caches-20060504 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Another small but important optimization of kmemsize charges.&lt;br /&gt;
&lt;br /&gt;
The maintenance of SLAB_UBC infrastructure is costly, so&lt;br /&gt;
kmalloc caches were duplicated, one for !SLAB_UBC allocations&lt;br /&gt;
and one for SLAB_UBC ones. Deallocations in the former avoid&lt;br /&gt;
the extra work of checking whether the object was charged.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-kmemopt-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Typo in mm/slab.c after kmem optimisation patch port.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-kmem-ppcfix-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] fixes the following compilation issue on ppc platform&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
In file included from include/asm/tlb.h:20,&lt;br /&gt;
                 from arch/powerpc/platforms/pseries/lpar.c:37:&lt;br /&gt;
include/asm/pgalloc.h:97: error: conflicting types for '__pte_alloc'&lt;br /&gt;
include/linux/mm.h:819: error: previous declaration of '__pte_alloc' was&lt;br /&gt;
here&lt;br /&gt;
make[2]: *** [arch/powerpc/platforms/pseries/lpar.o] Error 1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-net-locking-20060727 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
UBC socket buffers accounting locking fix.&lt;br /&gt;
&lt;br /&gt;
All sock beancounters are stored in the list, starting at top beancounter,&lt;br /&gt;
and thus top's lock must be used to protect the list.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-net-sparse-cleanup-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[UBC] Cleanups in networking accounting&lt;br /&gt;
&lt;br /&gt;
* remove unused gfp var from sock_alloc_send_skb2&lt;br /&gt;
* gfp_t type in ub_skb_alloc_bc()&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-net-tcpsndbuf-charge-fix-20060721 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Network buffers (un)charging logic is&lt;br /&gt;
# work with top beancounter&lt;br /&gt;
# update all the rest witl (un)charge_beancounter_notop&lt;br /&gt;
&lt;br /&gt;
In ub_sock_tcp_chargesend() it was broken (#65495)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-net-wait-mem-fix-20060823 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Return sk_stream_wait_memory() prototype to original state to make&lt;br /&gt;
inifiniband driver (and any other caller) compile.&lt;br /&gt;
Places that use new version call __sk_stream_wait_memory().&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-notopinl-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Make (un)charge_xxx_notop functions inline&lt;br /&gt;
to avoid call and IRQ disabling for top beancounters.&lt;br /&gt;
Spotted in profiles by Den.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-nrfiles-memset-after-charge-fix-20060911 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Memset file to 0 before charging it to prevent f_ub erasing.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-nrfiles-opt-fix-20060911 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Fix of nrfiles accounting.&lt;br /&gt;
&lt;br /&gt;
Since file_cachep is not SLAB_UBC after Andrey's optimisations&lt;br /&gt;
slab_ub(file) will BUG_ON inside slab_ub_ref.&lt;br /&gt;
Use file-&amp;amp;gt;f_ub instead.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-nrfiles-rcu-race-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[UBC] Fix UB_NUMFILE accounting optimisation leak&lt;br /&gt;
&lt;br /&gt;
In 2.6.16 files are put via RCU, so ub_file_uncharge() is called&lt;br /&gt;
in IRQ context. Thus non-atomic decrement of file_precharged must&lt;br /&gt;
be done with IRQs disabled.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-ppc-syscalls-20060830 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] fix ubc syscalls declaration for powerpc&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-putwarn-20060525 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch prints more sensible warning on bad refcounter in&lt;br /&gt;
__put_beancounter.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-skbufopt-20060512 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Various changes in socket buffer accounting.&lt;br /&gt;
&lt;br /&gt;
* likely/unlikely added;&lt;br /&gt;
* internal code organization improved;&lt;br /&gt;
* skb-&amp;amp;gt;sk never follows for netlink sockets (it's almost always wrong);&lt;br /&gt;
* ub_wcharged and optimizations should never be used for netlink sockets.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-skbufopt-2-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
This patch removes skb accounting speed-up for UNIX sockets.&lt;br /&gt;
It doesn't work (kfree_skb is called in a different socket's context).&lt;br /&gt;
Along with this, charge severity fixed in tcp_chargepage (#63650)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-syscalls-ppcfix-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] asm-powerpc/unistd.h mistype fix&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-tcppage-20060525 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
This patch fixes an apparent bug in accounting in ub_sock_tcp_chargepage.&lt;br /&gt;
Should help problems at DefenderHosting.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-tcprcvopt-20060502 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Optimization of tcprcvbuf accounting.&lt;br /&gt;
&lt;br /&gt;
Keep pre-charged amount in per-socket forw_space.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-tcpsndopt-20060906 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Tcpsndbuf optimization.&lt;br /&gt;
&lt;br /&gt;
* Keep more in per-socket poll_reserve, do not hurry to return to beancounter if limits are high enough;&lt;br /&gt;
* Certain unification and streamlining of charge/uncharge functions;&lt;br /&gt;
&lt;br /&gt;
minor: severity renamed to ub_severity, to keep this name in proper&lt;br /&gt;
namespace.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-twcount-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Denis Lunev &amp;amp;lt;den@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Per-UB limitation to the number of TCP timewait buckets.&lt;br /&gt;
&lt;br /&gt;
This is done to disallow to eat VE kernel memory by them completely.&lt;br /&gt;
Unfortunately, virtualized sysctl can't help, as TW buckets live after&lt;br /&gt;
actual VE death, so the counter on UB is used.&lt;br /&gt;
&lt;br /&gt;
So, the number of TW buckets is limited by&lt;br /&gt;
&lt;br /&gt;
* number of buckets allowed for a UB&lt;br /&gt;
* the fraction of kernel memory limit (in 1024th)&lt;br /&gt;
&lt;br /&gt;
which one is reached first (#61789)&lt;br /&gt;
&lt;br /&gt;
Ported on 2.6.16 by Xemul.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-twcount-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Fix ub_timewait_check() to get kmem_cache objuse directly&lt;br /&gt;
and from correct slab.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-user-attribute-20060815 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[UBC] Added __user attribute to UBC syscalls arguments&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-vmpages-ppcfix-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] adding MAP_EXECPRIO define for powerpc&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ubc-writespace-20060616 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Denis Lunev &amp;amp;lt;den@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Deadlock on beancounter lock.&lt;br /&gt;
&lt;br /&gt;
sk_stream_write_space() sends signal to a task, so it can take a beancounter&lt;br /&gt;
lock. ub_tcp_snd_wakeup()/ub_sock_snd_wakeup() was called with a lock held.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-kstat-sparse-20060815 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Use gfp_t type in __alloc_collect_stats()&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-memleak-fib-hash-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Alexey Kuznetsov &amp;amp;lt;alexey@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PATCH] memory leakage in fib_hash&lt;br /&gt;
&lt;br /&gt;
FIB hash tables and zone structs were never freed.&lt;br /&gt;
Each time, when VE is stopped, they leak.&lt;br /&gt;
&lt;br /&gt;
vzctl chkpnt/restore tests bring a system with 4G of ram quite soon.&lt;br /&gt;
Of course, vzctl start/stop is not so fast to bring down a system with&lt;br /&gt;
decent amount of RAM, but hundreds of thousands of slab entries are still&lt;br /&gt;
well visible.&lt;br /&gt;
&lt;br /&gt;
The patch solves leakage in size-128 and most of leakage in size-64.&lt;br /&gt;
&lt;br /&gt;
We still leak two objects in size-64 and 6 entries in size-32.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-multi-cleanup-20060824 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Try to cleanup each VE in a separate thread.&lt;br /&gt;
This alows simultaneous stop of many VEs at once (#60673)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-venet-devprintk-20060719 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Better print message on promiscuous mode change by ve_printk (possible DoS?)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-net-dev-sysctl-20060821 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Dmitry Mishin &amp;amp;lt;dim@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
This patch allows VE owner to use net.ipv4.conf.&amp;amp;lt;net_device&amp;amp;gt;.xxx sysctls.&lt;br /&gt;
&lt;br /&gt;
Bug #66842.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==== diff-ve-net-fib-leak-fix-20060830 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Fix memory leak in case of CONFIG_VE_NETDEV=n&lt;br /&gt;
&lt;br /&gt;
Do not create fib rules if we're not going to use them.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-net-fib-sparse-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
void argument in declarations of fib_rules_create()/destroy()&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-net-loop-stat-20060821 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Dmitry Mishin &amp;amp;lt;dim@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Virtualized loopback_stats&lt;br /&gt;
&lt;br /&gt;
Bug #66571.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==== diff-ve-net-mtu-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Dmitry Mishin &amp;amp;lt;dim@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
MTU manipulations on VE's devices&lt;br /&gt;
&lt;br /&gt;
* removed mtu restore logic for moved devices&lt;br /&gt;
* added posibility to set mtu &amp;amp;gt; 1500 for veth devices (#66836)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-net-rtcache-20060719 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Fix of broken virtualization  of /proc/net/rt_cache.&lt;br /&gt;
&lt;br /&gt;
Bug #65528.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-net-rtflush-20060719 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Fix for accidently broken /proc/sys/net/ipv4/route/flush.&lt;br /&gt;
&lt;br /&gt;
Fixes permissions as well.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-net-veth-sparse-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[VETH] Add __user attribute to the 2nd copy_from_user()'s argument&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-nf-allocsize-20060727 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Vasily Tarasov &amp;amp;lt;vtaras@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Since size can change in ipt_flush_table()&lt;br /&gt;
xt_free_table_info() will fail to free memory then.&lt;br /&gt;
&lt;br /&gt;
{{Bug|191}}.&amp;lt;br/&amp;gt;&lt;br /&gt;
Bug #65721.&lt;br /&gt;
&lt;br /&gt;
Port on 2.6.16 by Xemul.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-nf-compat-ppc64-20060831 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Dmitry Mishin &amp;amp;lt;dim@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[PPC] enabled usage of ip_tables compat layer on ppc64&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-portrange-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Denis Lunev &amp;amp;lt;den@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
This patch virtualizes ip_local_port_range sysctl to allow specification&lt;br /&gt;
of different port range for auto-binding inside VE.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-sysfs-ptmxadd-20060907 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Vasily Tarasov &amp;amp;lt;vtaras@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Add /sys/class/tty/ptmx device&lt;br /&gt;
&lt;br /&gt;
It's necessary, 'cause otherwise udev doesn't create /dev/ptmx&lt;br /&gt;
&lt;br /&gt;
{{Bug|243}}.&lt;br /&gt;
&lt;br /&gt;
Ported patch from Umka by Vasily.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-sysfs-ptmx-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Add prototypes for init/fini_ve_tty_class() calls.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-vecalls-sparse-20060915 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Cleanups in vecalls.c and vzcalluser.h&lt;br /&gt;
&lt;br /&gt;
* C99 syntax in structures init;&lt;br /&gt;
* __user attribute where appropriate;&lt;br /&gt;
* pass NULL as pointer arg, not 0.&lt;br /&gt;
&lt;br /&gt;
Also define an empty __user macro for userspace in vzcalluser.h&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-venet-sparse-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Small venet cleanups&lt;br /&gt;
&lt;br /&gt;
* C99 syntax in structures declarations&lt;br /&gt;
* __user attribute&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-veowner-sparse-20060915 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&lt;br /&gt;
Cleanups in veowner.c&lt;br /&gt;
&lt;br /&gt;
* use C99 syntax in struct fields initialization;&lt;br /&gt;
* use NULL instead of 0 for pointer arg.&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-vpsdumpable-20060710 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Denis Lunev &amp;amp;lt;den@openvz.org&amp;amp;gt;:&lt;br /&gt;
&lt;br /&gt;
This patch fixes small potential information leak,&lt;br /&gt;
i.e. here we should protect against core dump of VE0 process not inside VE,&lt;br /&gt;
but against core dump of VE0 process inside VE filesystem.&lt;br /&gt;
So, lets prevent coredump of such process at all.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-vzwdog-fix-20060908 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Vasily Averin &amp;amp;lt;vvs@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
/proc/interrupt file should be closed if kernel_thread() fails&lt;br /&gt;
&lt;br /&gt;
Bug #68096.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-ve-vzwdog-sparse-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
vfs_read() wants the 2nd argument to have __user attribute&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-vzdq-fmt-quota-20060608 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Vasily Tarasov &amp;amp;lt;vtaras@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[VZDQ] OOPS due to vzquota format operations are not implemented.&lt;br /&gt;
&lt;br /&gt;
If usual quota is launched it uses usual vfs_quota_on which utilize format&lt;br /&gt;
operations == NULL and it causes oops.&lt;br /&gt;
&lt;br /&gt;
{{Bug|184}}.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-vzdq-nougid-compile-20060917 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[VZDQ] Compilation fix for CONFIG_VZ_QUOTA_UGID=n case&lt;br /&gt;
&lt;br /&gt;
* ifdefs in a couple of places;&lt;br /&gt;
* moved some code out of compiled-out file;&lt;br /&gt;
* 'ifdef' instead of 'if defined'.&lt;br /&gt;
&lt;br /&gt;
{{Bug|222}}.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-vzdq-quotaoff-EIO-20060705 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Vasily Tarasov &amp;amp;lt;vtaras@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Turns off quota in spite of errors while syncing inodes.&lt;br /&gt;
&lt;br /&gt;
Bug #65186.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-vzdq-sparse-20060916 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Pavel Emelianov &amp;amp;lt;xemul@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
[VZDQ] Cleanups in vzquota code&lt;br /&gt;
&lt;br /&gt;
* C99 syntax in structures initialization&lt;br /&gt;
* __user attribute where appropriate&lt;br /&gt;
&lt;br /&gt;
Found by sparse.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-vzwdog-flat-mem-map-fix-20060828 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Kir Kolyshkin &amp;amp;lt;kir@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Fixes vzwdog compilation in case CONFIG_FLAT_NODE_MEM_MAP is not set.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== diff-vzwdog-irq-20060807 ====&lt;br /&gt;
&amp;lt;div class=&amp;quot;change&amp;quot;&amp;gt;&lt;br /&gt;
Patch from Andrey Savochkin &amp;amp;lt;saw@openvz.org&amp;amp;gt;:&amp;lt;br/&amp;gt;&lt;br /&gt;
Restore showing IRQ information in vzwdog.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kir</name></author>
		
	</entry>
</feed>