<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/nfs/client.c, branch linux-3.3.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.3.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.3.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-01-12T23:02:20Z</updated>
<entry>
<title>module_param: make bool parameters really bool (drivers &amp; misc)</title>
<updated>2012-01-12T23:02:20Z</updated>
<author>
<name>Rusty Russell</name>
</author>
<published>2012-01-12T23:02:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=90ab5ee94171b3e28de6bb42ee30b527014e0be7'/>
<id>urn:sha1:90ab5ee94171b3e28de6bb42ee30b527014e0be7</id>
<content type='text'>
module_param(bool) used to counter-intuitively take an int.  In
fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy
trick.

It's time to remove the int/unsigned int option.  For this version
it'll simply give a warning, but it'll break next kernel version.

Acked-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>NFSv4: Change the default setting of the nfs4_disable_idmapping parameter</title>
<updated>2012-01-09T19:22:27Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2012-01-09T18:46:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=074b1d12fe2500d7d453902f9266e6674b30d84c'/>
<id>urn:sha1:074b1d12fe2500d7d453902f9266e6674b30d84c</id>
<content type='text'>
Now that the use of numeric uids/gids is officially sanctioned in
RFC3530bis, it is time to change the default here to 'enabled'.

By doing so, we ensure that NFSv4 copies the behaviour of NFSv3 when we're
using the default AUTH_SYS authentication (i.e. when the client uses the
numeric uids/gids as authentication tokens), so that when new files are
created, they will appear to have the correct user/group.
It also fixes a number of backward compatibility issues when migrating
from NFSv3 to NFSv4 on a platform where the server uses different uid/gid
mappings than the client.

Note also that this setting has been successfully tested against servers
that do not support numeric uids/gids at several Connectathon/Bakeathon
events at this point, and the fall back to using string names/groups has
been shown to work well in all those test cases.

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>NFS: Cache state owners after files are closed</title>
<updated>2012-01-05T16:59:18Z</updated>
<author>
<name>Chuck Lever</name>
</author>
<published>2011-12-06T21:13:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0aaaf5c424c7ffd6b0c4253251356558b16ef3a2'/>
<id>urn:sha1:0aaaf5c424c7ffd6b0c4253251356558b16ef3a2</id>
<content type='text'>
Servers have a finite amount of memory to store NFSv4 open and lock
owners.  Moreover, servers may have a difficult time determining when
they can reap their state owner table, thanks to gray areas in the
NFSv4 protocol specification.  Thus clients should be careful to reuse
state owners when possible.

Currently Linux is not too careful.  When a user has closed all her
files on one mount point, the state owner's reference count goes to
zero, and it is released.  The next OPEN allocates a new one.  A
workload that serially opens and closes files can run through a large
number of open owners this way.

When a state owner's reference count goes to zero, slap it onto a free
list for that nfs_server, with an expiry time.  Garbage collect before
looking for a state owner.  This makes state owners for active users
available for re-use.

Now that there can be unused state owners remaining at umount time,
purge the state owner free list when a server is destroyed.  Also be
sure not to reclaim unused state owners during state recovery.

This change has benefits for the client as well.  For some workloads,
this approach drops the number of OPEN_CONFIRM calls from the same as
the number of OPEN calls, down to just one.  This reduces wire traffic
and thus open(2) latency.  Before this patch, untarring a kernel
source tarball shows the OPEN_CONFIRM call counter steadily increasing
through the test.  With the patch, the OPEN_CONFIRM count remains at 1
throughout the entire untar.

As long as the expiry time is kept short, I don't think garbage
collection should be terribly expensive, although it does bounce the
clp-&gt;cl_lock around a bit.

[ At some point we should rationalize the use of the nfs_server
-&gt;destroy method. ]

Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
[Trond: Fixed a garbage collection race and a few efficiency issues]
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Clean up the RPCSEC_GSS service ticket requests</title>
<updated>2012-01-05T15:42:38Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2012-01-03T18:22:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=68c97153fb7f2877f98aa6c29546381d9cad2fed'/>
<id>urn:sha1:68c97153fb7f2877f98aa6c29546381d9cad2fed</id>
<content type='text'>
Instead of hacking specific service names into gss_encode_v1_msg, we should
just allow the caller to specify the service name explicitly.

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
Acked-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
</content>
</entry>
<entry>
<title>Check validity of cl_rpcclient in nfs_server_list_show</title>
<updated>2011-10-20T23:44:04Z</updated>
<author>
<name>Malahal Naineni</name>
</author>
<published>2011-09-21T00:27:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=940aab490215424a269f93d2eba2794fc8b3e269'/>
<id>urn:sha1:940aab490215424a269f93d2eba2794fc8b3e269</id>
<content type='text'>
As soon as the nfs_client gets created, its cl_rpcclient is set to
ERR_PTR(-EINVAL). The rpc client structure is allocated later. Check
if the client is ready before using the cl_rpcclient pointer.

Signed-off-by: Malahal Naineni &lt;malahal@us.ibm.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>nfs: fix bug about IPv6 address scope checking</title>
<updated>2011-10-18T16:08:10Z</updated>
<author>
<name>Mi Jinlong</name>
</author>
<published>2011-10-12T07:09:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b9dd3abbbc708da5e3c53424a5b2c66ab580f97e'/>
<id>urn:sha1:b9dd3abbbc708da5e3c53424a5b2c66ab580f97e</id>
<content type='text'>
The result from ipv6_addr_scope() always not be a single SCOPE,
so we can't use equal to compare the result with IPV6_ADDR_SCOPE_LINKLOCAL
at nfs_sockaddr_match_ipaddr6.

This patch fixs the problem, and lets checking address before scope_id.

Signed-off-by: Mi Jinlong &lt;mijinlong@cn.fujitsu.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>pnfsblock: add device operations</title>
<updated>2011-07-31T16:18:16Z</updated>
<author>
<name>Jim Rees</name>
</author>
<published>2011-07-31T00:52:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fe0a9b740881d181e3c96c1f6f6043e252692ffe'/>
<id>urn:sha1:fe0a9b740881d181e3c96c1f6f6043e252692ffe</id>
<content type='text'>
Signed-off-by: Jim Rees &lt;rees@umich.edu&gt;
Signed-off-by: Fred Isaman &lt;iisaman@citi.umich.edu&gt;
Signed-off-by: Benny Halevy &lt;bhalevy@panasas.com&gt;
Signed-off-by: Benny Halevy &lt;bhalevy@tonian.com&gt;
[upcall bugfixes]
Signed-off-by: Peng Tao &lt;peng_tao@emc.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>pnfs: ask for layout_blksize and save it in nfs_server</title>
<updated>2011-07-31T16:18:15Z</updated>
<author>
<name>Fred Isaman</name>
</author>
<published>2011-07-31T00:52:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dae100c2b1b9463996aab9162f2258145c43f7df'/>
<id>urn:sha1:dae100c2b1b9463996aab9162f2258145c43f7df</id>
<content type='text'>
Block layout needs it to determine IO size.

Signed-off-by: Fred Isaman &lt;iisaman@citi.umich.edu&gt;
Signed-off-by: Tao Guo &lt;glorioustao@gmail.com&gt;
Signed-off-by: Benny Halevy &lt;bhalevy@panasas.com&gt;
Signed-off-by: Benny Halevy &lt;bhalevy@tonian.com&gt;
Signed-off-by: Jim Rees &lt;rees@umich.edu&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>pnfs: add set-clear layoutdriver interface</title>
<updated>2011-07-31T16:18:15Z</updated>
<author>
<name>Benny Halevy</name>
</author>
<published>2011-07-31T00:52:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=738fd0f360359aecc7fcd7604bbe9e854d81fb1f'/>
<id>urn:sha1:738fd0f360359aecc7fcd7604bbe9e854d81fb1f</id>
<content type='text'>
To allow layout driver to issue getdevicelist at mount time, and clean up
at umount time.

[fixup non NFS_V4_1 set_pnfs_layoutdriver definition]
[pnfs: pass mntfh down the init_pnfs path]
Signed-off-by: Benny Halevy &lt;bhalevy@panasas.com&gt;
Signed-off-by: Benny Halevy &lt;bhalevy@tonian.com&gt;
Signed-off-by: Jim Rees &lt;rees@umich.edu&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>NFS: Convert nfs4_set_ds_client to EXPORT_SYMBOL_GPL</title>
<updated>2011-07-15T13:12:24Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2011-07-13T23:26:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=94b134ac8e9965309e70684b504c53bca36338b4'/>
<id>urn:sha1:94b134ac8e9965309e70684b504c53bca36338b4</id>
<content type='text'>
This is not part of an external ABI...

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
</feed>
