<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/net/9p, branch v2.6.39</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>net/9p/protocol.c: Fix a memory leak</title>
<updated>2011-05-12T22:05:37+00:00</updated>
<author>
<name>Pedro Scarapicchia Junior</name>
<email>pedrinho.rep51@gmail.com</email>
</author>
<published>2011-05-09T14:10:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=1b0bcbcf62884959fa7214eb16c44cff445691c6'/>
<id>1b0bcbcf62884959fa7214eb16c44cff445691c6</id>
<content type='text'>
When p9pdu_readf() is called with "s" attribute, it allocates a pointer that
will store a string. In p9dirent_read(), this pointer is not being released,
leading to out of memory errors.
This patch releases this pointer after string is copyed to dirent-&gt;d_name.

Signed-off-by: Pedro Scarapicchia Junior &lt;pedro.scarapiccha@br.flextronics.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When p9pdu_readf() is called with "s" attribute, it allocates a pointer that
will store a string. In p9dirent_read(), this pointer is not being released,
leading to out of memory errors.
This patch releases this pointer after string is copyed to dirent-&gt;d_name.

Signed-off-by: Pedro Scarapicchia Junior &lt;pedro.scarapiccha@br.flextronics.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net/9p: Handle get_user_pages_fast return properly</title>
<updated>2011-05-10T03:51:12+00:00</updated>
<author>
<name>M. Mohan Kumar</name>
<email>mohan@in.ibm.com</email>
</author>
<published>2011-04-15T08:29:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=3cd7967825a2b3926dc96ae566d986c4420919f7'/>
<id>3cd7967825a2b3926dc96ae566d986c4420919f7</id>
<content type='text'>
Use proper data type to handle get_user_pages_fast error condition. Also
do not treat EFAULT error as fatal.

Signed-off-by: M. Mohan Kumar &lt;mohan@in.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use proper data type to handle get_user_pages_fast error condition. Also
do not treat EFAULT error as fatal.

Signed-off-by: M. Mohan Kumar &lt;mohan@in.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net/9p: nwname should be an unsigned int</title>
<updated>2011-04-15T20:26:15+00:00</updated>
<author>
<name>Harsh Prateek Bora</name>
<email>harsh@linux.vnet.ibm.com</email>
</author>
<published>2011-03-31T10:19:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=b76225e22ac98070325ee2ba89473c1e1360c4cb'/>
<id>b76225e22ac98070325ee2ba89473c1e1360c4cb</id>
<content type='text'>
Signed-off-by: Harsh Prateek Bora &lt;harsh@linux.vnet.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric VAn Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Harsh Prateek Bora &lt;harsh@linux.vnet.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric VAn Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>9p: Fix sparse error</title>
<updated>2011-04-15T20:26:14+00:00</updated>
<author>
<name>Aneesh Kumar K.V</name>
<email>aneesh.kumar@linux.vnet.ibm.com</email>
</author>
<published>2011-03-24T17:44:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=bd8c8ade6b6f109bc3dce14a8d12013f27f2a590'/>
<id>bd8c8ade6b6f109bc3dce14a8d12013f27f2a590</id>
<content type='text'>
Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>9p: revert tsyncfs related changes</title>
<updated>2011-04-15T20:26:14+00:00</updated>
<author>
<name>Aneesh Kumar K.V</name>
<email>aneesh.kumar@linux.vnet.ibm.com</email>
</author>
<published>2011-03-24T15:08:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=df5d8c80f1871d9e79af4b0f3656a9528a7d4bab'/>
<id>df5d8c80f1871d9e79af4b0f3656a9528a7d4bab</id>
<content type='text'>
Now that we use write_inode to flush server
cache related to fid, we don't need tsyncfs either fort dotl or dotu
protocols. For dotu this helps to do a more efficient server flush.

Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that we use write_inode to flush server
cache related to fid, we don't need tsyncfs either fort dotl or dotu
protocols. For dotu this helps to do a more efficient server flush.

Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix common misspellings</title>
<updated>2011-03-31T14:26:23+00:00</updated>
<author>
<name>Lucas De Marchi</name>
<email>lucas.demarchi@profusion.mobi</email>
</author>
<published>2011-03-31T01:57:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=25985edcedea6396277003854657b5f3cb31a628'/>
<id>25985edcedea6396277003854657b5f3cb31a628</id>
<content type='text'>
Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi &lt;lucas.demarchi@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi &lt;lucas.demarchi@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[net/9p]: Introduce basic flow-control for VirtIO transport.</title>
<updated>2011-03-22T21:32:50+00:00</updated>
<author>
<name>Venkateswararao Jujjuri (JV)</name>
<email>jvrao@linux.vnet.ibm.com</email>
</author>
<published>2011-03-18T22:49:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=68da9ba4eeadae86ad42e52b80822fbd56971267'/>
<id>68da9ba4eeadae86ad42e52b80822fbd56971267</id>
<content type='text'>
Recent zerocopy work in the 9P VirtIO transport maps and pins
user buffers into kernel memory for the server to work on them.
Since the user process can initiate this kind of pinning with a simple
read/write call, thousands of IO threads initiated by the user process can
hog the system resources and could result into denial of service.

This patch introduces flow control to avoid that extreme scenario.

The ceiling limit to avoid denial of service attacks is set to relatively
high (nr_free_pagecache_pages()/4) so that it won't interfere with
regular usage, but can step in extreme cases to limit the total system
hang. Since we don't have a global structure to accommodate this variable,
I choose the virtio_chan as the home for this.

Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Reviewed-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Recent zerocopy work in the 9P VirtIO transport maps and pins
user buffers into kernel memory for the server to work on them.
Since the user process can initiate this kind of pinning with a simple
read/write call, thousands of IO threads initiated by the user process can
hog the system resources and could result into denial of service.

This patch introduces flow control to avoid that extreme scenario.

The ceiling limit to avoid denial of service attacks is set to relatively
high (nr_free_pagecache_pages()/4) so that it won't interfere with
regular usage, but can step in extreme cases to limit the total system
hang. Since we don't have a global structure to accommodate this variable,
I choose the virtio_chan as the home for this.

Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Reviewed-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[net/9p] Don't re-pin pages on retrying virtqueue_add_buf().</title>
<updated>2011-03-22T21:32:48+00:00</updated>
<author>
<name>Venkateswararao Jujjuri (JV)</name>
<email>jvrao@linux.vnet.ibm.com</email>
</author>
<published>2011-03-14T21:22:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=316ad5501c2098cb2a2a25ed77a0421f1671411c'/>
<id>316ad5501c2098cb2a2a25ed77a0421f1671411c</id>
<content type='text'>
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[net/9p] Set the condition just before waking up.</title>
<updated>2011-03-22T21:32:47+00:00</updated>
<author>
<name>Venkateswararao Jujjuri (JV)</name>
<email>jvrao@linux.vnet.ibm.com</email>
</author>
<published>2011-03-14T21:12:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=a01a984035ea799b14aa5e874dcaeb122f09c4b4'/>
<id>a01a984035ea799b14aa5e874dcaeb122f09c4b4</id>
<content type='text'>
Given that the sprious wake-ups are common, we need to move the
condition setting right next to the wake_up().  After setting the condition
to req-&gt;status = REQ_STATUS_RCVD, sprious wakeups may cause the
virtqueue back on the free list for someone else to use.
This may result in kernel panic while relasing the pinned pages
in p9_release_req_pages().

Also rearranged the while loop in req_done() for better redability.

Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Given that the sprious wake-ups are common, we need to move the
condition setting right next to the wake_up().  After setting the condition
to req-&gt;status = REQ_STATUS_RCVD, sprious wakeups may cause the
virtqueue back on the free list for someone else to use.
This may result in kernel panic while relasing the pinned pages
in p9_release_req_pages().

Also rearranged the while loop in req_done() for better redability.

Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[net/9p] unconditional wake_up to proc waiting for space on VirtIO ring</title>
<updated>2011-03-22T21:32:19+00:00</updated>
<author>
<name>Venkateswararao Jujjuri (JV)</name>
<email>jvrao@linux.vnet.ibm.com</email>
</author>
<published>2011-03-08T23:34:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=53bda3e5b4e91763224ecb7d05dab94d281fd41d'/>
<id>53bda3e5b4e91763224ecb7d05dab94d281fd41d</id>
<content type='text'>
Process may wait to get space on VirtIO ring to send a transaction to
VirtFS server. Current code just does a conditional wake_up() which
means only one process will be woken up even if multiple processes
are waiting.

This fix makes the wake_up unconditional. Hence we won't have any
processes waiting for-ever.

Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Process may wait to get space on VirtIO ring to send a transaction to
VirtFS server. Current code just does a conditional wake_up() which
means only one process will be woken up even if multiple processes
are waiting.

This fix makes the wake_up unconditional. Hence we won't have any
processes waiting for-ever.

Signed-off-by: Venkateswararao Jujjuri &lt;jvrao@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
