All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] Please pull bugfixes for the NFS client
@ 2010-09-14  2:11 Trond Myklebust
  0 siblings, 0 replies; 8+ messages in thread
From: Trond Myklebust @ 2010-09-14  2:11 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-nfs

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/nfs-2.6.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/Kconfig                       |    1 +
 fs/nfs/client.c                      |    2 +-
 fs/nfs/file.c                        |    4 -
 fs/nfs/super.c                       |   10 +++-
 fs/nfsd/Kconfig                      |    1 +
 include/linux/sunrpc/clnt.h          |    2 +-
 net/sunrpc/auth.c                    |    2 +-
 net/sunrpc/auth_gss/auth_gss.c       |    9 ++-
 net/sunrpc/auth_gss/gss_krb5_mech.c  |   10 +++-
 net/sunrpc/auth_gss/gss_spkm3_mech.c |    5 +-
 net/sunrpc/clnt.c                    |  116 +++++++++++++++++-----------------
 net/sunrpc/rpc_pipe.c                |   20 +++---
 12 files changed, 99 insertions(+), 83 deletions(-)

commit 827e3457022d0bb0b1bb8a0eb88501876fe7dcf0
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Sun Sep 12 19:57:50 2010 -0400

    SUNRPC: Fix the NFSv4 and RPCSEC_GSS Kconfig dependencies
    
    The NFSv4 client's callback server calls svc_gss_principal(), which
    is defined in the auth_rpcgss.ko
    
    The NFSv4 server has the same dependency, and in addition calls
    svcauth_gss_flavor(), gss_mech_get_by_pseudoflavor(),
    gss_pseudoflavor_to_service() and gss_mech_put() from the same module.
    
    The module auth_rpcgss itself has no dependencies aside from sunrpc,
    so we only need to select RPCSEC_GSS.
    
    Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit fbf3fdd2443965d9ba6fb4b5fecd1f6e0847218f
Author: Menyhart Zoltan <Zoltan.Menyhart@bull.net>
Date:   Sun Sep 12 19:55:26 2010 -0400

    statfs() gives ESTALE error
    
    Hi,
    
    An NFS client executes a statfs("file", &buff) call.
    "file" exists / existed, the client has read / written it,
    but it has already closed it.
    
    user_path(pathname, &path) looks up "file" successfully in the
    directory-cache  and restarts the aging timer of the directory-entry.
    Even if "file" has already been removed from the server, because the
    lookupcache=positive option I use, keeps the entries valid for a while.
    
    nfs_statfs() returns ESTALE if "file" has already been removed from the
    server.
    
    If the user application repeats the statfs("file", &buff) call, we
    are stuck: "file" remains young forever in the directory-cache.
    
    Signed-off-by: Zoltan Menyhart  <Zoltan.Menyhart@bull.net>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Cc: stable@kernel.org

commit b20d37ca9561711c6a3c4b859c2855f49565e061
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Sun Sep 12 19:55:26 2010 -0400

    NFS: Fix a typo in nfs_sockaddr_match_ipaddr6
    
    Reported-by: Ben Greear <greearb@candelatech.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Cc: stable@kernel.org

commit db5fe26541b6b48460104a0d949a27cdc7786957
Author: Miquel van Smoorenburg <mikevs@xs4all.net>
Date:   Sun Sep 12 19:55:26 2010 -0400

    sunrpc: increase MAX_HASHTABLE_BITS to 14
    
    The maximum size of the authcache is now set to 1024 (10 bits),
    but on our server we need at least 4096 (12 bits). Increase
    MAX_HASHTABLE_BITS to 14. This is a maximum of 16384 entries,
    each containing a pointer (8 bytes on x86_64). This is
    exactly the limit of kmalloc() (128K).
    
    Signed-off-by: Miquel van Smoorenburg <mikevs@xs4all.net>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 651b2933b22a0c060e6bb940c4104eb447a61f9a
Author: Bian Naimeng <biannm@cn.fujitsu.com>
Date:   Sun Sep 12 19:55:26 2010 -0400

    gss:spkm3 miss returning error to caller when import security context
    
    spkm3 miss returning error to up layer when import security context,
    it may be return ok though it has failed to import security context.
    
    Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit ce8477e1176389ed920550f4c925ad4a815b22d5
Author: Bian Naimeng <biannm@cn.fujitsu.com>
Date:   Sun Sep 12 19:55:25 2010 -0400

    gss:krb5 miss returning error to caller when import security context
    
    krb5 miss returning error to up layer when import security context,
    it may be return ok though it has failed to import security context.
    
    Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit b1bde04c6d9a120dec602cc8a70b8a7f21600883
Author: Fabio Olive Leite <fleite@redhat.com>
Date:   Sun Sep 12 19:55:25 2010 -0400

    Remove incorrect do_vfs_lock message
    
    The do_vfs_lock function on fs/nfs/file.c is only called if NLM is
    not being used, via the -onolock mount option. Therefore it cannot
    really be "out of sync with lock manager" when the local locking
    function called returns an error, as there will be no corresponding
    call to the NLM. For details, simply check the if/else on do_setlk
    and do_unlk on fs/nfs/file.c.
    
    Signed-Off-By: Fabio Olive Leite <fleite@redhat.com>
    Reviewed-by: Jeff Layton <jlayton@redhat.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 55576244eba805307a2b2b6a145b8f85f8c7c124
Author: J. Bruce Fields <bfields@redhat.com>
Date:   Sun Sep 12 19:55:25 2010 -0400

    SUNRPC: cleanup state-machine ordering
    
    This is just a minor cleanup: net/sunrpc/clnt.c clarifies the rpc client
    state machine by commenting each state and by laying out the functions
    implementing each state in the order that each state is normally
    executed (in the absence of errors).
    
    The previous patch "Fix null dereference in call_allocate" changed the
    order of the states.  Move the functions and update the comments to
    reflect the change.
    
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 006abe887c5e637d059c44310de6c92f36aded3b
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Sun Sep 12 19:55:25 2010 -0400

    SUNRPC: Fix a race in rpc_info_open
    
    There is a race between rpc_info_open and rpc_release_client()
    in that nothing stops a process from opening the file after
    the clnt->cl_kref goes to zero.
    
    Fix this by using atomic_inc_unless_zero()...
    
    Reported-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Cc: stable@kernel.org

commit 5a67657a2e90c9e4a48518f95d4ba7777aa20fbb
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Sun Sep 12 19:55:25 2010 -0400

    SUNRPC: Fix race corrupting rpc upcall
    
    If rpc_queue_upcall() adds a new upcall to the rpci->pipe list just
    after rpc_pipe_release calls rpc_purge_list(), but before it calls
    gss_pipe_release (as rpci->ops->release_pipe(inode)), then the latter
    will free a message without deleting it from the rpci->pipe list.
    
    We will be left with a freed object on the rpc->pipe list.  Most
    frequent symptoms are kernel crashes in rpc.gssd system calls on the
    pipe in question.
    
    Reported-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Cc: stable@kernel.org

commit f2d47d02fd84343a3c5452daca6ed12c75618aff
Author: J. Bruce Fields <bfields@redhat.com>
Date:   Sun Sep 12 19:55:25 2010 -0400

    Fix null dereference in call_allocate
    
    In call_allocate we need to reach the auth in order to factor au_cslack
    into the allocation.
    
    As of a17c2153d2e271b0cbacae9bed83b0eaa41db7e1 "SUNRPC: Move the bound
    cred to struct rpc_rqst", call_allocate attempts to do this by
    dereferencing tk_client->cl_auth, however this is not guaranteed to be
    defined--cl_auth can be zero in the case of gss context destruction (see
    rpc_free_auth).
    
    Reorder the client state machine to bind credentials before allocating,
    so that we can instead reach the auth through the cred.
    
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Cc: stable@kernel.org



^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2012-06-21 22:58 ` Myklebust, Trond
  0 siblings, 0 replies; 8+ messages in thread
From: Myklebust, Trond @ 2012-06-21 22:58 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Linux NFS mailing list, Linux Kernel mailing list

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 1809 bytes --]

Hi Linus,

The following changes since commit 39a50b42f7026027b54131291ad0f350100eac95:

  Merge branch 'hfsplus' (2012-06-17 14:40:35 -0700)

are available in the git repository at:


  git://git.linux-nfs.org/projects/trondmy/linux-nfs.git tags/nfs-for-3.5-3

for you to fetch changes up to b1027439dff844675f6c0df97a1b1d190791a699:

  NFS: Force the legacy idmapper to be single threaded (2012-06-20 14:38:11 -0400)

Cheers,
  Trond

----------------------------------------------------------------
NFS client bugfixes for Linux 3.5

Fixes include:
- Fix a write hang due to an uninitalised variable when !defined(CONFIG_NFS_V4)
- Address upcall races in the legacy NFSv4 idmapper
- Remove an O_DIRECT refcounting issue
- Fix a pNFS refcounting bug when the file layout metadata server is also
  acting as a data server
- Fix a pNFS module loading race.

----------------------------------------------------------------
Bryan Schumaker (1):
      NFS: Force the legacy idmapper to be single threaded

Trond Myklebust (4):
      NFSv4.1: Fix umount when filelayout DS is also the MDS
      NFSv4.1: Fix a race in set_pnfs_layoutdriver
      NFS: Fix a refcounting issue in O_DIRECT
      NFS: Initialise commit_info.rpc_out when !defined(CONFIG_NFS_V4)

 fs/nfs/client.c           |    1 -
 fs/nfs/direct.c           |    1 +
 fs/nfs/idmap.c            |   13 ++++++++-----
 fs/nfs/inode.c            |    2 +-
 fs/nfs/pnfs.c             |   13 +++++++++----
 include/linux/nfs_fs_sb.h |    1 +
 6 files changed, 20 insertions(+), 11 deletions(-)

-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com

ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2012-06-21 22:58 ` Myklebust, Trond
  0 siblings, 0 replies; 8+ messages in thread
From: Myklebust, Trond @ 2012-06-21 22:58 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Linux NFS mailing list, Linux Kernel mailing list

SGkgTGludXMsDQoNClRoZSBmb2xsb3dpbmcgY2hhbmdlcyBzaW5jZSBjb21taXQgMzlhNTBiNDJm
NzAyNjAyN2I1NDEzMTI5MWFkMGYzNTAxMDBlYWM5NToNCg0KICBNZXJnZSBicmFuY2ggJ2hmc3Bs
dXMnICgyMDEyLTA2LTE3IDE0OjQwOjM1IC0wNzAwKQ0KDQphcmUgYXZhaWxhYmxlIGluIHRoZSBn
aXQgcmVwb3NpdG9yeSBhdDoNCg0KDQogIGdpdDovL2dpdC5saW51eC1uZnMub3JnL3Byb2plY3Rz
L3Ryb25kbXkvbGludXgtbmZzLmdpdCB0YWdzL25mcy1mb3ItMy41LTMNCg0KZm9yIHlvdSB0byBm
ZXRjaCBjaGFuZ2VzIHVwIHRvIGIxMDI3NDM5ZGZmODQ0Njc1ZjZjMGRmOTdhMWIxZDE5MDc5MWE2
OTk6DQoNCiAgTkZTOiBGb3JjZSB0aGUgbGVnYWN5IGlkbWFwcGVyIHRvIGJlIHNpbmdsZSB0aHJl
YWRlZCAoMjAxMi0wNi0yMCAxNDozODoxMSAtMDQwMCkNCg0KQ2hlZXJzLA0KICBUcm9uZA0KDQot
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tDQpORlMgY2xpZW50IGJ1Z2ZpeGVzIGZvciBMaW51eCAzLjUNCg0KRml4ZXMgaW5jbHVk
ZToNCi0gRml4IGEgd3JpdGUgaGFuZyBkdWUgdG8gYW4gdW5pbml0YWxpc2VkIHZhcmlhYmxlIHdo
ZW4gIWRlZmluZWQoQ09ORklHX05GU19WNCkNCi0gQWRkcmVzcyB1cGNhbGwgcmFjZXMgaW4gdGhl
IGxlZ2FjeSBORlN2NCBpZG1hcHBlcg0KLSBSZW1vdmUgYW4gT19ESVJFQ1QgcmVmY291bnRpbmcg
aXNzdWUNCi0gRml4IGEgcE5GUyByZWZjb3VudGluZyBidWcgd2hlbiB0aGUgZmlsZSBsYXlvdXQg
bWV0YWRhdGEgc2VydmVyIGlzIGFsc28NCiAgYWN0aW5nIGFzIGEgZGF0YSBzZXJ2ZXINCi0gRml4
IGEgcE5GUyBtb2R1bGUgbG9hZGluZyByYWNlLg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpCcnlhbiBTY2h1bWFrZXIg
KDEpOg0KICAgICAgTkZTOiBGb3JjZSB0aGUgbGVnYWN5IGlkbWFwcGVyIHRvIGJlIHNpbmdsZSB0
aHJlYWRlZA0KDQpUcm9uZCBNeWtsZWJ1c3QgKDQpOg0KICAgICAgTkZTdjQuMTogRml4IHVtb3Vu
dCB3aGVuIGZpbGVsYXlvdXQgRFMgaXMgYWxzbyB0aGUgTURTDQogICAgICBORlN2NC4xOiBGaXgg
YSByYWNlIGluIHNldF9wbmZzX2xheW91dGRyaXZlcg0KICAgICAgTkZTOiBGaXggYSByZWZjb3Vu
dGluZyBpc3N1ZSBpbiBPX0RJUkVDVA0KICAgICAgTkZTOiBJbml0aWFsaXNlIGNvbW1pdF9pbmZv
LnJwY19vdXQgd2hlbiAhZGVmaW5lZChDT05GSUdfTkZTX1Y0KQ0KDQogZnMvbmZzL2NsaWVudC5j
ICAgICAgICAgICB8ICAgIDEgLQ0KIGZzL25mcy9kaXJlY3QuYyAgICAgICAgICAgfCAgICAxICsN
CiBmcy9uZnMvaWRtYXAuYyAgICAgICAgICAgIHwgICAxMyArKysrKysrKy0tLS0tDQogZnMvbmZz
L2lub2RlLmMgICAgICAgICAgICB8ICAgIDIgKy0NCiBmcy9uZnMvcG5mcy5jICAgICAgICAgICAg
IHwgICAxMyArKysrKysrKystLS0tDQogaW5jbHVkZS9saW51eC9uZnNfZnNfc2IuaCB8ICAgIDEg
Kw0KIDYgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pDQoN
Ci0tIA0KVHJvbmQgTXlrbGVidXN0DQpMaW51eCBORlMgY2xpZW50IG1haW50YWluZXINCg0KTmV0
QXBwDQpUcm9uZC5NeWtsZWJ1c3RAbmV0YXBwLmNvbQ0Kd3d3Lm5ldGFwcC5jb20NCg0K

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2012-06-14 16:00 Myklebust, Trond
  0 siblings, 0 replies; 8+ messages in thread
From: Myklebust, Trond @ 2012-06-14 16:00 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-nfs, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 3009 bytes --]

The following changes since commit 2d117403b30cd7301af60d7d54b279a9f566d10d:

  Merge tag 'please-pull-mce' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras (2012-05-31 10:53:37 -0700)

are available in the git repository at:


  git://git.linux-nfs.org/projects/trondmy/linux-nfs.git bugfixes

for you to fetch changes up to e216c8c771c9a77f14d7e8b4131846b038f6c145:

  NFS: add an endian notation for sparse (2012-06-12 09:54:40 -0400)

----------------------------------------------------------------
NFS client bugfixes for Linux 3.5

Highlights include:

 - Fix a couple of mount regressions due to the recent cleanups.
 - Fix an Oops in the open recovery code
 - Fix an rpc_pipefs upcall hang that results from some of the
   net namespace work from 3.4.x (stable kernel candidate).
 - Fix a couple of write and o_direct regressions that were found
   at last weeks Bakeathon testing event in Ann Arbor.

----------------------------------------------------------------
Andy Adamson (1):
      NFSv4 do not send an empty SETATTR compound

Bryan Schumaker (2):
      NFS4: Set parsed mount data version to 4
      NFS: Use the NFS_DEFAULT_VERSION for v2 and v3 mounts

Dan Carpenter (2):
      NFSv4.1: integer overflow in decode_cb_sequence_args()
      NFS: add an endian notation for sparse

Fred Isaman (2):
      NFS4: Fix open bug when pnfs module blacklisted
      NFS: fix directio refcount bug on commit

Jeff Layton (1):
      rpc_pipefs: allow rpc_purge_list to take a NULL waitq pointer

Sachin Prabhu (1):
      NFSv2: EOF incorrectly set on short read

Steve Dickson (1):
      NFS: Map minor mismatch error to protocol not support error.

Trond Myklebust (9):
      NFSv4.1: Fix a request leak on the back channel
      NFSv4: Fix an Oops in the open recovery code
      NFSv4: Fix up decode_attr_mdsthreshold
      NFSv4.1: Convert a trivial printk into a dprintk
      NFSv4.1: Ensure we clear session state flags after a session creation
      NFS: Fix a commit bug
      NFS: Remove incorrect BUG_ON in nfs_found_client
      NFSv4.1: Convert another trivial printk into a dprintk
      NFSv4: Fix unnecessary delegation returns in nfs4_do_open

 fs/nfs/callback_xdr.c   |    8 ++++----
 fs/nfs/client.c         |    2 --
 fs/nfs/direct.c         |    8 ++++----
 fs/nfs/nfs4_fs.h        |    2 +-
 fs/nfs/nfs4proc.c       |   42 ++++++++++++++++++++++++++++++++++--------
 fs/nfs/nfs4state.c      |   22 ++++++++++++----------
 fs/nfs/nfs4xdr.c        |   15 ++++++++++-----
 fs/nfs/pnfs.h           |    2 +-
 fs/nfs/proc.c           |    2 +-
 fs/nfs/super.c          |    3 +++
 fs/nfs/write.c          |    7 ++++---
 include/linux/nfs_xdr.h |    3 +++
 net/sunrpc/rpc_pipe.c   |   12 ++++++------
 net/sunrpc/svc.c        |    3 ++-
 14 files changed, 85 insertions(+), 46 deletions(-)

-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2011-09-15 18:50 Trond Myklebust
  0 siblings, 0 replies; 8+ messages in thread
From: Trond Myklebust @ 2011-09-15 18:50 UTC (permalink / raw)
  To: Linus Torvalds

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/linux-nfs.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/nfs4_fs.h    |    8 +++++---
 fs/nfs/nfs4proc.c   |   20 ++++++++++++++------
 fs/nfs/nfs4renewd.c |   12 +++++++++---
 fs/nfs/nfs4state.c  |    6 ++++++
 fs/nfs/super.c      |   23 ++++++++++++++++++++---
 fs/nfs/write.c      |    2 +-
 6 files changed, 55 insertions(+), 16 deletions(-)

commit fb2088ccc139ffbf1cf359216883712dab4ae43d
Author: Sachin Prabhu <sprabhu@redhat.com>
Date:   Mon Aug 1 12:10:12 2011 +0100

    nfs: Do not allow multiple mounts on same mountpoint when using -o noac
    
    Do not allow multiple mounts on same mountpoint when using -o noac
    
    When you normally attempt to mount a share twice on the same mountpoint,
    a check in do_add_mount causes it to return an error
    
    # mount localhost:/nfsv3 /mnt
    # mount localhost:/nfsv3 /mnt
    mount.nfs: /mnt is already mounted or busy
    
    However when using the option 'noac', the user is able to mount the same
    share on the same mountpoint multiple times. This happens because a
    share mounted with the noac option is automatically assigned the 'sync'
    flag MS_SYNCHRONOUS in nfs_initialise_sb(). This flag is set after the
    check for already existing superblocks is done in sget(). The check for
    the mount flags in nfs_compare_mount_options() does not take into
    account the 'sync' flag applied later on in the code path. This means
    that when using 'noac', a new superblock structure is assigned for every
    new mount of the same share and multiple shares on the same mountpoint
    are allowed.
    
    ie.
    # mount -onoac localhost:/nfsv3 /mnt
    can be run multiple times.
    
    The patch checks for noac and assigns the sync flag before sget() is
    called to obtain an already existing superblock structure.
    
    Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
    Reviewed-by: Jeff Layton <jlayton@redhat.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit f13c3620a4d1123dbf032f93f350b856ef292ced
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Mon Sep 12 11:47:53 2011 -0400

    NFS: Fix a typo in nfs_flush_multi
    
    Fix a typo which causes an Oops in the RPC layer, when using wsize < 4k.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Tested-by: Sricharan R <r.sricharan@ti.com>

commit 042b60beb410caf68f576d63d6849d0f0a545eb0
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Wed Aug 24 15:07:37 2011 -0400

    NFSv4: renewd needs to be able to handle the NFS4ERR_CB_PATH_DOWN error
    
    The NFSv4 spec does not specify that the server must repeat that error,
    so in order to avoid having the delegations revoked, we should handle
    it immediately.
    
    Also note that NFS4ERR_CB_PATH_DOWN does in fact renew the lease...
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 2f60ea6b8ceda61ae08bef71a652eac36ec193b3
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Wed Aug 24 15:07:37 2011 -0400

    NFSv4: The NFSv4.0 client must send RENEW calls if it holds a delegation
    
    RFC3530 states that if the client holds a delegation, then it is obliged
    to continue to send RENEW calls once every lease period in order to allow
    the server to return NFS4ERR_CB_PATH_DOWN if the callback path is
    unreachable.
    
    This is not required for NFSv4.1, since the server can at any time set
    the SEQ4_STATUS_CB_PATH_DOWN_SESSION in any SEQUENCE operation.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 8534d4ec055d854be6c94e8e5654fa87678ea5f7
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Wed Aug 24 15:07:37 2011 -0400

    NFSv4: nfs4_proc_renew should be declared static
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit b569ad34926defcff998f214afeb260331165985
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Wed Aug 24 15:07:35 2011 -0400

    NFSv4: nfs4_proc_async_renew should use a GFP_NOFS allocation
    
    We shouldn't allow the renew daemon to do direct reclaim on the NFS
    partition.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>


-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2011-03-28  7:04 Trond Myklebust
  0 siblings, 0 replies; 8+ messages in thread
From: Trond Myklebust @ 2011-03-28  7:04 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Linux Filesystem Development

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/nfs-2.6.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/namespace.c       |    4 +++-
 fs/nfs/pagelist.c        |    4 ++--
 fs/nfs/write.c           |   13 +++----------
 include/linux/nfs_page.h |    1 -
 net/sunrpc/sched.c       |    4 +++-
 5 files changed, 11 insertions(+), 15 deletions(-)

commit a271c5a0dea418931b6a903ef85adc30ad4c54be
Author: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Date:   Sun Mar 27 17:48:57 2011 +0200

    NFS: Ensure that rpc_release_resources_task() can be called twice.
    
    BUG: atomic_dec_and_test(): -1: atomic counter underflow at:
    Pid: 2827, comm: mount.nfs Not tainted 2.6.38 #1
    Call Trace:
     [<ffffffffa02223a0>] ? put_rpccred+0x44/0x14e [sunrpc]
     [<ffffffffa021bbe9>] ? rpc_ping+0x4e/0x58 [sunrpc]
     [<ffffffffa021c4a5>] ? rpc_create+0x481/0x4fc [sunrpc]
     [<ffffffffa022298a>] ? rpcauth_lookup_credcache+0xab/0x22d [sunrpc]
     [<ffffffffa028be8c>] ? nfs_create_rpc_client+0xa6/0xeb [nfs]
     [<ffffffffa028c660>] ? nfs4_set_client+0xc2/0x1f9 [nfs]
     [<ffffffffa028cd3c>] ? nfs4_create_server+0xf2/0x2a6 [nfs]
     [<ffffffffa0295d07>] ? nfs4_remote_mount+0x4e/0x14a [nfs]
     [<ffffffff810dd570>] ? vfs_kern_mount+0x6e/0x133
     [<ffffffffa029605a>] ? nfs_do_root_mount+0x76/0x95 [nfs]
     [<ffffffffa029643d>] ? nfs4_try_mount+0x56/0xaf [nfs]
     [<ffffffffa0297434>] ? nfs_get_sb+0x435/0x73c [nfs]
     [<ffffffff810dd59b>] ? vfs_kern_mount+0x99/0x133
     [<ffffffff810dd693>] ? do_kern_mount+0x48/0xd8
     [<ffffffff810f5b75>] ? do_mount+0x6da/0x741
     [<ffffffff810f5c5f>] ? sys_mount+0x83/0xc0
     [<ffffffff8100293b>] ? system_call_fastpath+0x16/0x1b
    
    Well, so, I think this is real bug of nfs codes somewhere. With some
    review, the code
    
    rpc_call_sync()
        rpc_run_task
            rpc_execute()
                __rpc_execute()
                    rpc_release_task()
                        rpc_release_resources_task()
                            put_rpccred()                <= release cred
        rpc_put_task
            rpc_do_put_task()
                rpc_release_resources_task()
                    put_rpccred()                        <= release cred again
    
    seems to be release cred unintendedly.
    
    Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit a0e7e3cf7932d6c77de0dc79a40dbaeb8060b544
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Sat Mar 26 02:24:35 2011 -0400

    NFS: Don't leak RPC clients in NFSv4 secinfo negotiation
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 4d65c520fb4abed970069d18c119cfe85624f46d
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Fri Mar 25 14:15:11 2011 -0400

    NFS: Fix a hang in the writeback path
    
    Now that the inode scalability patches have been merged, it is no longer
    safe to call igrab() under the inode->i_lock.
    Now that we no longer call nfs_clear_request() until the nfs_page is
    being freed, we know that we are always holding a reference to the
    nfs_open_context, which again holds a reference to the path, and so
    the inode cannot be freed until the last nfs_page has been removed
    from the radix tree and freed.
    
    We can therefore skip the igrab()/iput() altogether.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>


-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2011-03-28  7:04 Trond Myklebust
  0 siblings, 0 replies; 8+ messages in thread
From: Trond Myklebust @ 2011-03-28  7:04 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Linux Filesystem Development

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/nfs-2.6.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/namespace.c       |    4 +++-
 fs/nfs/pagelist.c        |    4 ++--
 fs/nfs/write.c           |   13 +++----------
 include/linux/nfs_page.h |    1 -
 net/sunrpc/sched.c       |    4 +++-
 5 files changed, 11 insertions(+), 15 deletions(-)

commit a271c5a0dea418931b6a903ef85adc30ad4c54be
Author: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Date:   Sun Mar 27 17:48:57 2011 +0200

    NFS: Ensure that rpc_release_resources_task() can be called twice.
    
    BUG: atomic_dec_and_test(): -1: atomic counter underflow at:
    Pid: 2827, comm: mount.nfs Not tainted 2.6.38 #1
    Call Trace:
     [<ffffffffa02223a0>] ? put_rpccred+0x44/0x14e [sunrpc]
     [<ffffffffa021bbe9>] ? rpc_ping+0x4e/0x58 [sunrpc]
     [<ffffffffa021c4a5>] ? rpc_create+0x481/0x4fc [sunrpc]
     [<ffffffffa022298a>] ? rpcauth_lookup_credcache+0xab/0x22d [sunrpc]
     [<ffffffffa028be8c>] ? nfs_create_rpc_client+0xa6/0xeb [nfs]
     [<ffffffffa028c660>] ? nfs4_set_client+0xc2/0x1f9 [nfs]
     [<ffffffffa028cd3c>] ? nfs4_create_server+0xf2/0x2a6 [nfs]
     [<ffffffffa0295d07>] ? nfs4_remote_mount+0x4e/0x14a [nfs]
     [<ffffffff810dd570>] ? vfs_kern_mount+0x6e/0x133
     [<ffffffffa029605a>] ? nfs_do_root_mount+0x76/0x95 [nfs]
     [<ffffffffa029643d>] ? nfs4_try_mount+0x56/0xaf [nfs]
     [<ffffffffa0297434>] ? nfs_get_sb+0x435/0x73c [nfs]
     [<ffffffff810dd59b>] ? vfs_kern_mount+0x99/0x133
     [<ffffffff810dd693>] ? do_kern_mount+0x48/0xd8
     [<ffffffff810f5b75>] ? do_mount+0x6da/0x741
     [<ffffffff810f5c5f>] ? sys_mount+0x83/0xc0
     [<ffffffff8100293b>] ? system_call_fastpath+0x16/0x1b
    
    Well, so, I think this is real bug of nfs codes somewhere. With some
    review, the code
    
    rpc_call_sync()
        rpc_run_task
            rpc_execute()
                __rpc_execute()
                    rpc_release_task()
                        rpc_release_resources_task()
                            put_rpccred()                <= release cred
        rpc_put_task
            rpc_do_put_task()
                rpc_release_resources_task()
                    put_rpccred()                        <= release cred again
    
    seems to be release cred unintendedly.
    
    Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit a0e7e3cf7932d6c77de0dc79a40dbaeb8060b544
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Sat Mar 26 02:24:35 2011 -0400

    NFS: Don't leak RPC clients in NFSv4 secinfo negotiation
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 4d65c520fb4abed970069d18c119cfe85624f46d
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Fri Mar 25 14:15:11 2011 -0400

    NFS: Fix a hang in the writeback path
    
    Now that the inode scalability patches have been merged, it is no longer
    safe to call igrab() under the inode->i_lock.
    Now that we no longer call nfs_clear_request() until the nfs_page is
    being freed, we know that we are always holding a reference to the
    nfs_open_context, which again holds a reference to the path, and so
    the inode cannot be freed until the last nfs_page has been removed
    from the radix tree and freed.
    
    We can therefore skip the igrab()/iput() altogether.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>


-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] Please pull bugfixes for the NFS client
@ 2010-08-18 22:44 Trond Myklebust
  0 siblings, 0 replies; 8+ messages in thread
From: Trond Myklebust @ 2010-08-18 22:44 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-nfs, linux-kernel, Dr. J. Bruce Fields

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/nfs-2.6.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/Kconfig                 |    1 -
 fs/nfs/dir.c                   |    9 ++++++++-
 fs/nfs/file.c                  |    2 +-
 fs/nfs/nfs4proc.c              |   11 ++++++-----
 fs/nfs/super.c                 |    7 +++++++
 fs/nfsd/Kconfig                |    1 -
 net/sunrpc/Kconfig             |    9 +++++----
 net/sunrpc/xprtrdma/rpc_rdma.c |    2 ++
 net/sunrpc/xprtrdma/verbs.c    |   22 +++++++++++++++++-----
 net/sunrpc/xprtsock.c          |   28 ++++++++++++++++++++++------
 10 files changed, 68 insertions(+), 24 deletions(-)

commit 0a377cff9428af2da2b293d11e07bc4dbf064ee5
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Wed Aug 18 09:25:42 2010 -0400

    NFS: Fix an Oops in the NFSv4 atomic open code
    
    Adam Lackorzynski reports:
    
    with 2.6.35.2 I'm getting this reproducible Oops:
    
    [  110.825396] BUG: unable to handle kernel NULL pointer dereference at
    (null)
    [  110.828638] IP: [<ffffffff811247b7>] encode_attrs+0x1a/0x2a4
    [  110.828638] PGD be89f067 PUD bf18f067 PMD 0
    [  110.828638] Oops: 0000 [#1] SMP
    [  110.828638] last sysfs file: /sys/class/net/lo/operstate
    [  110.828638] CPU 2
    [  110.828638] Modules linked in: rtc_cmos rtc_core rtc_lib amd64_edac_mod
    i2c_amd756 edac_core i2c_core dm_mirror dm_region_hash dm_log dm_snapshot
    sg sr_mod usb_storage ohci_hcd mptspi tg3 mptscsih mptbase usbcore nls_base
    [last unloaded: scsi_wait_scan]
    [  110.828638]
    [  110.828638] Pid: 11264, comm: setchecksum Not tainted 2.6.35.2 #1
    [  110.828638] RIP: 0010:[<ffffffff811247b7>]  [<ffffffff811247b7>]
    encode_attrs+0x1a/0x2a4
    [  110.828638] RSP: 0000:ffff88003bf5b878  EFLAGS: 00010296
    [  110.828638] RAX: ffff8800bddb48a8 RBX: ffff88003bf5bb18 RCX:
    0000000000000000
    [  110.828638] RDX: ffff8800be258800 RSI: 0000000000000000 RDI:
    ffff88003bf5b9f8
    [  110.828638] RBP: 0000000000000000 R08: ffff8800bddb48a8 R09:
    0000000000000004
    [  110.828638] R10: 0000000000000003 R11: ffff8800be779000 R12:
    ffff8800be258800
    [  110.828638] R13: ffff88003bf5b9f8 R14: ffff88003bf5bb20 R15:
    ffff8800be258800
    [  110.828638] FS:  0000000000000000(0000) GS:ffff880041e00000(0063)
    knlGS:00000000556bd6b0
    [  110.828638] CS:  0010 DS: 002b ES: 002b CR0: 000000008005003b
    [  110.828638] CR2: 0000000000000000 CR3: 00000000be8ef000 CR4:
    00000000000006e0
    [  110.828638] DR0: 0000000000000000 DR1: 0000000000000000 DR2:
    0000000000000000
    [  110.828638] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7:
    0000000000000400
    [  110.828638] Process setchecksum (pid: 11264, threadinfo
    ffff88003bf5a000, task ffff88003f232210)
    [  110.828638] Stack:
    [  110.828638]  0000000000000000 ffff8800bfbcf920 0000000000000000
    0000000000000ffe
    [  110.828638] <0> 0000000000000000 0000000000000000 0000000000000000
    0000000000000000
    [  110.828638] <0> 0000000000000000 0000000000000000 0000000000000000
    0000000000000000
    [  110.828638] Call Trace:
    [  110.828638]  [<ffffffff81124c1f>] ? nfs4_xdr_enc_setattr+0x90/0xb4
    [  110.828638]  [<ffffffff81371161>] ? call_transmit+0x1c3/0x24a
    [  110.828638]  [<ffffffff813774d9>] ? __rpc_execute+0x78/0x22a
    [  110.828638]  [<ffffffff81371a91>] ? rpc_run_task+0x21/0x2b
    [  110.828638]  [<ffffffff81371b7e>] ? rpc_call_sync+0x3d/0x5d
    [  110.828638]  [<ffffffff8111e284>] ? _nfs4_do_setattr+0x11b/0x147
    [  110.828638]  [<ffffffff81109466>] ? nfs_init_locked+0x0/0x32
    [  110.828638]  [<ffffffff810ac521>] ? ifind+0x4e/0x90
    [  110.828638]  [<ffffffff8111e2fb>] ? nfs4_do_setattr+0x4b/0x6e
    [  110.828638]  [<ffffffff8111e634>] ? nfs4_do_open+0x291/0x3a6
    [  110.828638]  [<ffffffff8111ed81>] ? nfs4_open_revalidate+0x63/0x14a
    [  110.828638]  [<ffffffff811056c4>] ? nfs_open_revalidate+0xd7/0x161
    [  110.828638]  [<ffffffff810a2de4>] ? do_lookup+0x1a4/0x201
    [  110.828638]  [<ffffffff810a4733>] ? link_path_walk+0x6a/0x9d5
    [  110.828638]  [<ffffffff810a42b6>] ? do_last+0x17b/0x58e
    [  110.828638]  [<ffffffff810a5fbe>] ? do_filp_open+0x1bd/0x56e
    [  110.828638]  [<ffffffff811cd5e0>] ? _atomic_dec_and_lock+0x30/0x48
    [  110.828638]  [<ffffffff810a9b1b>] ? dput+0x37/0x152
    [  110.828638]  [<ffffffff810ae063>] ? alloc_fd+0x69/0x10a
    [  110.828638]  [<ffffffff81099f39>] ? do_sys_open+0x56/0x100
    [  110.828638]  [<ffffffff81027a22>] ? ia32_sysret+0x0/0x5
    [  110.828638] Code: 83 f1 01 e8 f5 ca ff ff 48 83 c4 50 5b 5d 41 5c c3 41
    57 41 56 41 55 49 89 fd 41 54 49 89 d4 55 48 89 f5 53 48 81 ec 18 01 00 00
    <8b> 06 89 c2 83 e2 08 83 fa 01 19 db 83 e3 f8 83 c3 18 a8 01 8d
    [  110.828638] RIP  [<ffffffff811247b7>] encode_attrs+0x1a/0x2a4
    [  110.828638]  RSP <ffff88003bf5b878>
    [  110.828638] CR2: 0000000000000000
    [  112.840396] ---[ end trace 95282e83fd77358f ]---
    
    We need to ensure that the O_EXCL flag is turned off if the user doesn't
    set O_CREAT.
    
    Cc: stable@kernel.org
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit df486a25900f4dba9cdc3886c4ac871951c6aef3
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Tue Aug 17 17:42:45 2010 -0400

    NFS: Fix the selection of security flavours in Kconfig
    
    Randy Dunlap reports:
    
    ERROR: "svc_gss_principal" [fs/nfs/nfs.ko] undefined!
    
    
    because in fs/nfs/Kconfig, NFS_V4 selects RPCSEC_GSS_KRB5
    and/or in fs/nfsd/Kconfig, NFSD_V4 selects RPCSEC_GSS_KRB5.
    
    RPCSEC_GSS_KRB5 does 5 selects, but none of these is enforced/followed
    by the fs/nfs[d]/Kconfig configs:
    
    	select SUNRPC_GSS
    	select CRYPTO
    	select CRYPTO_MD5
    	select CRYPTO_DES
    	select CRYPTO_CBC
    
    Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
    Cc: J. Bruce Fields <bfields@fieldses.org>
    Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 0702099bd86c33c2dcdbd3963433a61f3f503901
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 11 13:10:16 2010 -0400

    NFS: fix the return value of nfs_file_fsync()
    
    By the commit af7fa16 2010-08-03 NFS: Fix up the fsync code
    close(2) became returning the non-zero value even if it went well.
    nfs_file_fsync() should return 0 when "status" is positive.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 15cdc644b268a9a9ce73ce0b153129222c254b7b
Author: Tom Tucker <tom@ogc.us>
Date:   Wed Aug 11 12:47:24 2010 -0400

    rpcrdma: Fix SQ size calculation when memreg is FRMR
    
    This patch updates the computation to include the worst case situation
    where three FRMR are required to map a single RPC REQ.
    
    Signed-off-by: Tom Tucker <tom@ogc.us>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 7a8b80eb38b248cfdf84048dad12073d5cfba3e6
Author: Steve Wise <swise@opengridcomputing.com>
Date:   Wed Aug 11 12:47:08 2010 -0400

    xprtrdma: Do not truncate iova_start values in frmr registrations.
    
    A bad cast causes the iova_start, which in this case is a 64b DMA
    bus address, to be truncated on 32b systems.  This breaks frmrs on
    32b systems.  No cast is needed.
    
    Signed-off-by: Steve Wise <swise@opengridcomputing.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 5d7ca35a182a626f8ed5596023ad42eb219a332e
Author: Davidlohr Bueso <dave@gnu.org>
Date:   Wed Aug 11 12:42:15 2010 -0400

    nfs: Remove redundant NULL check upon kfree()
    
    Signed-off-by: Davidlohr Bueso <dave@gnu.org>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 9b00c64318cc337846a7a08a5678f5f19aeff188
Author: Patrick J. LoPresti <lopresti@gmail.com>
Date:   Tue Aug 10 17:28:01 2010 -0400

    nfs: Add "lookupcache" to displayed mount options
    
    Running "cat /proc/mounts" fails to display the "lookupcache" option.
    This oversight cost me a bunch of wasted time recently.
    
    The following simple patch fixes it.
    
    CC: stable <stable@kernel.org>
    Signed-off-by: Patrick LoPresti <lopresti@gmail.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit f5a73672d1811f2fb1dcb62ca90ceb12b2050ae7
Author: Neil Brown <neilb@suse.de>
Date:   Tue Aug 10 10:20:05 2010 -0400

    NFS: allow close-to-open cache semantics to apply to root of NFS filesystem
    
    
    
    To obey NFS cache semantics, the client must verify the cached
    attributes when a file is opened.  In most cases this is done by a call to
    d_validate as one of the last steps in path_walk.
    
    However for the root of a filesystem, d_validate is only ever called
    on the mounted-on filesystem (except when the path ends '.' or '..').
    So NFS has no chance to validate the attributes.
    
    So, in nfs_opendir, we revalidate the attributes if the opened
    directory is the mountpoint.  This may cause double-validation for "."
    and ".." lookups, but that is better than missing regular /path/name
    lookups completely.
    
    Signed-off-by: NeilBrown <neilb@suse.de>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 669502ff31d7dba1849aec7ee2450a3c61f57d39
Author: Andy Chittenden <andyc.bluearc@gmail.com>
Date:   Tue Aug 10 10:19:53 2010 -0400

    SUNRPC: fix NFS client over TCP hangs due to packet loss (Bug 16494)
    
    When reusing a TCP connection, ensure that it's aborted if a previous
    shutdown attempt has been made on that connection so that the RPC over
    TCP recovery mechanism succeeds.
    
    Signed-off-by: Andy Chittenden <andyc.bluearc@gmail.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-06-21 22:58 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-14  2:11 [GIT PULL] Please pull bugfixes for the NFS client Trond Myklebust
  -- strict thread matches above, loose matches on Subject: below --
2012-06-21 22:58 Myklebust, Trond
2012-06-21 22:58 ` Myklebust, Trond
2012-06-14 16:00 Myklebust, Trond
2011-09-15 18:50 Trond Myklebust
2011-03-28  7:04 Trond Myklebust
2011-03-28  7:04 Trond Myklebust
2010-08-18 22:44 Trond Myklebust

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.