<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/include/net/9p/client.h, branch linux-3.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.17.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.17.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2014-03-25T21:38:16Z</updated>
<entry>
<title>9pnet: p9_client-&gt;conn field is unused. Remove it.</title>
<updated>2014-03-25T21:38:16Z</updated>
<author>
<name>Simon Derr</name>
<email>simon.derr@bull.net</email>
</author>
<published>2014-03-11T09:13:08Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=7b4f307276ae3f69fc4d7c4fb6a188c906755d98'/>
<id>urn:sha1:7b4f307276ae3f69fc4d7c4fb6a188c906755d98</id>
<content type='text'>
Signed-off-by: Simon Derr &lt;simon.derr@bull.net&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
<entry>
<title>9P: Get rid of REQ_STATUS_FLSH</title>
<updated>2014-03-25T21:38:15Z</updated>
<author>
<name>Simon Derr</name>
<email>simon.derr@bull.net</email>
</author>
<published>2014-03-10T15:38:52Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0bfd6845c0b5e3df3507d2b4d230478980e7f04a'/>
<id>urn:sha1:0bfd6845c0b5e3df3507d2b4d230478980e7f04a</id>
<content type='text'>
This request state is mostly useless, and properly implementing it
for RDMA would require an extra lock to be taken in handle_recv()
and in rdma_cancel() to avoid this race:

    handle_recv()           rdma_cancel()
        .                     .
        .                   if req-&gt;state == SENT
    req-&gt;state = RCVD         .
        .                           req-&gt;state = FLSH

So just get rid of it.

Signed-off-by: Simon Derr &lt;simon.derr@bull.net&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
<entry>
<title>9P: Add memory barriers to protect request fields over cb/rpc threads handoff</title>
<updated>2014-03-25T21:37:59Z</updated>
<author>
<name>Dominique Martinet</name>
<email>dominique.martinet@cea.fr</email>
</author>
<published>2014-01-17T17:31:00Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2b6e72ed747f68a038df616efd86744b3644d694'/>
<id>urn:sha1:2b6e72ed747f68a038df616efd86744b3644d694</id>
<content type='text'>
We need barriers to guarantee this pattern works as intended:
[w] req-&gt;rc, 1		[r] req-&gt;status, 1
wmb			rmb
[w] req-&gt;status, 1	[r] req-&gt;rc

Where the wmb ensures that rc gets written before status,
and the rmb ensures that if you observe status == 1, rc is the new value.

Signed-off-by: Dominique Martinet &lt;dominique.martinet@cea.fr&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
<entry>
<title>fs/9p: avoid accessing utsname after namespace has been torn down</title>
<updated>2013-08-26T15:28:46Z</updated>
<author>
<name>Will Deacon</name>
<email>will.deacon@arm.com</email>
</author>
<published>2013-08-21T17:24:47Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=50192abe02929586111fb33f216060a9341875f1'/>
<id>urn:sha1:50192abe02929586111fb33f216060a9341875f1</id>
<content type='text'>
During trinity fuzzing in a kvmtool guest, I stumbled across the
following:

Unable to handle kernel NULL pointer dereference at virtual address 00000004
PC is at v9fs_file_do_lock+0xc8/0x1a0
LR is at v9fs_file_do_lock+0x48/0x1a0
[&lt;c01e2ed0&gt;] (v9fs_file_do_lock+0xc8/0x1a0) from [&lt;c0119154&gt;] (locks_remove_flock+0x8c/0x124)
[&lt;c0119154&gt;] (locks_remove_flock+0x8c/0x124) from [&lt;c00d9bf0&gt;] (__fput+0x58/0x1e4)
[&lt;c00d9bf0&gt;] (__fput+0x58/0x1e4) from [&lt;c0044340&gt;] (task_work_run+0xac/0xe8)
[&lt;c0044340&gt;] (task_work_run+0xac/0xe8) from [&lt;c002e36c&gt;] (do_exit+0x6bc/0x8d8)
[&lt;c002e36c&gt;] (do_exit+0x6bc/0x8d8) from [&lt;c002e674&gt;] (do_group_exit+0x3c/0xb0)
[&lt;c002e674&gt;] (do_group_exit+0x3c/0xb0) from [&lt;c002e6f8&gt;] (__wake_up_parent+0x0/0x18)

I believe this is due to an attempt to access utsname()-&gt;nodename, after
exit_task_namespaces() has been called, leaving current-&gt;nsproxy-&gt;uts_ns
as NULL and causing the above dereference.

A similar issue was fixed for lockd in 9a1b6bf818e7 ("LOCKD: Don't call
utsname()-&gt;nodename from nlmclnt_setlockargs"), so this patch attempts
something similar for 9pfs.

Cc: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
Cc: Ron Minnich &lt;rminnich@sandia.gov&gt;
Cc: Latchesar Ionkov &lt;lucho@ionkov.net&gt;
Cc: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
Signed-off-by: Will Deacon &lt;will.deacon@arm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
<entry>
<title>9p: turn fid-&gt;dlist into hlist</title>
<updated>2013-02-28T03:51:08Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2013-02-28T03:51:08Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c4d30967f3020cda9df9ee22af79cd1f2c284244'/>
<id>urn:sha1:c4d30967f3020cda9df9ee22af79cd1f2c284244</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>9p: Modify struct 9p_fid to use a kuid_t not a uid_t</title>
<updated>2013-02-12T11:19:32Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2013-01-30T19:48:53Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b464255699077c6b33ea58ee01db80f5729511ad'/>
<id>urn:sha1:b464255699077c6b33ea58ee01db80f5729511ad</id>
<content type='text'>
Change struct 9p_fid and it's associated functions to
use kuid_t's instead of uid_t.

Cc: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
Cc: Ron Minnich &lt;rminnich@gmail.com&gt;
Cc: Latchesar Ionkov &lt;lucho@ionkov.net&gt;
Signed-off-by: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
</content>
</entry>
<entry>
<title>9p: Transmit kuid and kgid values</title>
<updated>2013-02-12T11:19:30Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2013-01-30T00:09:41Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=f791f7c5e354870eaa5e31c4038c6723683283f1'/>
<id>urn:sha1:f791f7c5e354870eaa5e31c4038c6723683283f1</id>
<content type='text'>
Modify the p9_client_rpc format specifiers of every function that
directly transmits a uid or a gid from 'd' to 'u' or 'g' as
appropriate.

Modify those same functions to take kuid_t and kgid_t parameters
instead of uid_t and gid_t parameters.

Cc: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
Cc: Ron Minnich &lt;rminnich@gmail.com&gt;
Cc: Latchesar Ionkov &lt;lucho@ionkov.net&gt;
Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
</content>
</entry>
<entry>
<title>net/9p: Convert net/9p protocol dumps to tracepoints</title>
<updated>2011-10-24T16:13:12Z</updated>
<author>
<name>Aneesh Kumar K.V</name>
<email>aneesh.kumar@linux.vnet.ibm.com</email>
</author>
<published>2011-08-06T19:16:59Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=348b59012e5c6402741d067cf6eeeb6271999d06'/>
<id>urn:sha1:348b59012e5c6402741d067cf6eeeb6271999d06</id>
<content type='text'>
This helps in more control over debugging.
root@qemu-img-64:~# ls /pass/123
ls: cannot access /pass/123: No such file or directory
root@qemu-img-64:~# cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
#           TASK-PID    CPU#    TIMESTAMP  FUNCTION
#              | |       |          |         |
              ls-1536  [001]    70.928584: 9p_protocol_dump: clnt 18446612132784021504 P9_TWALK(tag = 1)
000: 16 00 00 00 6e 01 00 01 00 00 00 02 00 00 00 01
010: 00 03 00 31 32 33 00 00 00 ff ff ff ff 00 00 00

              ls-1536  [001]    70.928587: &lt;stack trace&gt;
 =&gt; trace_9p_protocol_dump
 =&gt; p9pdu_finalize
 =&gt; p9_client_rpc
 =&gt; p9_client_walk
 =&gt; v9fs_vfs_lookup
 =&gt; d_alloc_and_lookup
 =&gt; walk_component
 =&gt; path_lookupat
              ls-1536  [000]    70.929696: 9p_protocol_dump: clnt 18446612132784021504 P9_RLERROR(tag = 1)
000: 0b 00 00 00 07 01 00 02 00 00 00 4e 03 00 02 00
010: 00 00 00 00 03 00 02 00 00 00 00 00 ff 43 00 00

              ls-1536  [000]    70.929697: &lt;stack trace&gt;
 =&gt; trace_9p_protocol_dump
 =&gt; p9_client_rpc
 =&gt; p9_client_walk
 =&gt; v9fs_vfs_lookup
 =&gt; d_alloc_and_lookup
 =&gt; walk_component
 =&gt; path_lookupat
 =&gt; do_path_lookup

Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
<entry>
<title>fs/9p: change an int to unsigned int</title>
<updated>2011-10-24T16:13:12Z</updated>
<author>
<name>Dan Carpenter</name>
<email>error27@gmail.com</email>
</author>
<published>2011-08-26T16:57:40Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ef6b0807e2c986d5f1cb878e1b32a7cf4c32b4c8'/>
<id>urn:sha1:ef6b0807e2c986d5f1cb878e1b32a7cf4c32b4c8</id>
<content type='text'>
Without this msize=4294967295 will result in a crash

Signed-off-by: Dan Carpenter &lt;error27@gmail.com&gt;
Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
<entry>
<title>fs/9p: add 9P2000.L unlinkat operation</title>
<updated>2011-07-23T14:32:52Z</updated>
<author>
<name>Aneesh Kumar K.V</name>
<email>aneesh.kumar@linux.vnet.ibm.com</email>
</author>
<published>2011-06-28T10:11:18Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=48e370ff93769ee6e592ddef3bb38686b8147c67'/>
<id>urn:sha1:48e370ff93769ee6e592ddef3bb38686b8147c67</id>
<content type='text'>
unlinkat - Remove a directory entry

size[4] Tunlinkat tag[2] dirfid[4] name[s] flag[4]
size[4] Runlinkat tag[2]

older Tremove have the below request format

size[4] Tremove tag[2] fid[4]

The remove message is used to remove a directory entry either file or directory
The remove opreation is actually a directory opertation and should ideally have
dirfid, if not we cannot represent the fid on server with anything other than
name. We will have to derive the directory name from fid in the Tremove request.

NOTE: The operation doesn't clunk the unlink fid.

Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
Signed-off-by: Eric Van Hensbergen &lt;ericvh@gmail.com&gt;
</content>
</entry>
</feed>
