<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/include/net/9p/client.h, branch linux-4.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.1.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.1.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2015-04-12T02:28:27Z</updated>
<entry>
<title>9p: switch p9_client_read() to passing struct iov_iter *</title>
<updated>2015-04-12T02:28:27Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2015-04-02T03:42:28Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e1200fe68f20759f359698f8a8dc81d06d1265f5'/>
<id>urn:sha1:e1200fe68f20759f359698f8a8dc81d06d1265f5</id>
<content type='text'>
... and make it loop

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>9p: switch p9_client_write() to passing it struct iov_iter *</title>
<updated>2015-04-12T02:28:25Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2015-04-02T00:17:51Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=070b3656cf228eaaef7b28b59264c5c7cdbdd0fb'/>
<id>urn:sha1:070b3656cf228eaaef7b28b59264c5c7cdbdd0fb</id>
<content type='text'>
... and make it loop until it's done

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<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>
</feed>
