Merge git://git.linux-nfs.org/pub/linux/nfs-2.6
Linus Torvalds [Mon, 15 Oct 2007 17:46:05 +0000 (10:46 -0700)]
* git://git.linux-nfs.org/pub/linux/nfs-2.6: (131 commits)
  NFSv4: Fix a typo in nfs_inode_reclaim_delegation
  NFS: Add a boot parameter to disable 64 bit inode numbers
  NFS: nfs_refresh_inode should clear cache_validity flags on success
  NFS: Fix a connectathon regression in NFSv3 and NFSv4
  NFS: Use nfs_refresh_inode() in ops that aren't expected to change the inode
  SUNRPC: Don't call xprt_release in call refresh
  SUNRPC: Don't call xprt_release() if call_allocate fails
  SUNRPC: Fix buggy UDP transmission
  [23/37] Clean up duplicate includes in
  [2.6 patch] net/sunrpc/rpcb_clnt.c: make struct rpcb_program static
  SUNRPC: Use correct type in buffer length calculations
  SUNRPC: Fix default hostname created in rpc_create()
  nfs: add server port to rpc_pipe info file
  NFS: Get rid of some obsolete macros
  NFS: Simplify filehandle revalidation
  NFS: Ensure that nfs_link() returns a hashed dentry
  NFS: Be strict about dentry revalidation when doing exclusive create
  NFS: Don't zap the readdir caches upon error
  NFS: Remove the redundant nfs_reval_fsid()
  NFSv3: Always use directory post-op attributes in nfs3_proc_lookup
  ...

Fix up trivial conflict due to sock_owned_by_user() cleanup manually in
net/sunrpc/xprtsock.c

1  2 
Documentation/kernel-parameters.txt
fs/Kconfig
fs/nfsd/nfs4xdr.c
include/linux/jiffies.h
include/linux/writeback.h
net/sunrpc/xprtsock.c

Simple merge
diff --cc fs/Kconfig
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -1183,27 -1346,29 +1346,29 @@@ static int xs_bind6(struct sock_xprt *t
  static struct lock_class_key xs_key[2];
  static struct lock_class_key xs_slock_key[2];
  
- static inline void xs_reclassify_socket(struct socket *sock)
+ static inline void xs_reclassify_socket4(struct socket *sock)
  {
        struct sock *sk = sock->sk;
 -      BUG_ON(sk->sk_lock.owner != NULL);
 +      BUG_ON(sock_owned_by_user(sk));
-       switch (sk->sk_family) {
-       case AF_INET:
-               sock_lock_init_class_and_name(sk, "slock-AF_INET-NFS",
-                       &xs_slock_key[0], "sk_lock-AF_INET-NFS", &xs_key[0]);
-               break;
+       sock_lock_init_class_and_name(sk, "slock-AF_INET-RPC",
+               &xs_slock_key[0], "sk_lock-AF_INET-RPC", &xs_key[0]);
+ }
  
-       case AF_INET6:
-               sock_lock_init_class_and_name(sk, "slock-AF_INET6-NFS",
-                       &xs_slock_key[1], "sk_lock-AF_INET6-NFS", &xs_key[1]);
-               break;
+ static inline void xs_reclassify_socket6(struct socket *sock)
+ {
+       struct sock *sk = sock->sk;
  
-       default:
-               BUG();
-       }
 -      BUG_ON(sk->sk_lock.owner != NULL);
++      BUG_ON(sock_owned_by_user(sk));
+       sock_lock_init_class_and_name(sk, "slock-AF_INET6-RPC",
+               &xs_slock_key[1], "sk_lock-AF_INET6-RPC", &xs_key[1]);
  }
  #else
- static inline void xs_reclassify_socket(struct socket *sock)
+ static inline void xs_reclassify_socket4(struct socket *sock)
+ {
+ }
+ static inline void xs_reclassify_socket6(struct socket *sock)
  {
  }
  #endif