aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/proc.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-07-30 22:16:57 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-07-30 22:16:57 -0400
commit1fad1e9a747687a7399bf58e87974f9b1bbcae06 (patch)
treefde2dc9a35321e21c99e06d4b79d5fa06fd34679 /fs/nfs/proc.c
parentbbeb0af25f493261c15ceee176c99b7fd6fd5479 (diff)
parentf44106e2173f08ccb1c9195d85a6c22388b461c1 (diff)
Merge tag 'nfs-for-3.6-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
Pull NFS client updates from Trond Myklebust: "Features include: - More preparatory patches for modularising NFSv2/v3/v4. Split out the various NFSv2/v3/v4-specific code into separate files - More preparation for the NFSv4 migration code - Ensure that OPEN(O_CREATE) observes the pNFS mds threshold parameters - pNFS fast failover when the data servers are down - Various cleanups and debugging patches" * tag 'nfs-for-3.6-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (67 commits) nfs: fix fl_type tests in NFSv4 code NFS: fix pnfs regression with directio writes NFS: fix pnfs regression with directio reads sunrpc: clnt: Add missing braces nfs: fix stub return type warnings NFS: exit_nfs_v4() shouldn't be an __exit function SUNRPC: Add a missing spin_unlock to gss_mech_list_pseudoflavors NFS: Split out NFS v4 client functions NFS: Split out the NFS v4 filesystem types NFS: Create a single nfs_clone_super() function NFS: Split out NFS v4 server creating code NFS: Initialize the NFS v4 client from init_nfs_v4() NFS: Move the v4 getroot code to nfs4getroot.c NFS: Split out NFS v4 file operations NFS: Initialize v4 sysctls from nfs_init_v4() NFS: Create an init_nfs_v4() function NFS: Split out NFS v4 inode operations NFS: Split out NFS v3 inode operations NFS: Split out NFS v2 inode operations NFS: Clean up nfs4_proc_setclientid() and friends ...
Diffstat (limited to 'fs/nfs/proc.c')
-rw-r--r--fs/nfs/proc.c38
1 files changed, 38 insertions, 0 deletions
diff --git a/fs/nfs/proc.c b/fs/nfs/proc.c
index 4433806e116f..4d3356af3309 100644
--- a/fs/nfs/proc.c
+++ b/fs/nfs/proc.c
@@ -734,6 +734,38 @@ out_einval:
734 return -EINVAL; 734 return -EINVAL;
735} 735}
736 736
737static int nfs_have_delegation(struct inode *inode, fmode_t flags)
738{
739 return 0;
740}
741
742static int nfs_return_delegation(struct inode *inode)
743{
744 nfs_wb_all(inode);
745 return 0;
746}
747
748static const struct inode_operations nfs_dir_inode_operations = {
749 .create = nfs_create,
750 .lookup = nfs_lookup,
751 .link = nfs_link,
752 .unlink = nfs_unlink,
753 .symlink = nfs_symlink,
754 .mkdir = nfs_mkdir,
755 .rmdir = nfs_rmdir,
756 .mknod = nfs_mknod,
757 .rename = nfs_rename,
758 .permission = nfs_permission,
759 .getattr = nfs_getattr,
760 .setattr = nfs_setattr,
761};
762
763static const struct inode_operations nfs_file_inode_operations = {
764 .permission = nfs_permission,
765 .getattr = nfs_getattr,
766 .setattr = nfs_setattr,
767};
768
737const struct nfs_rpc_ops nfs_v2_clientops = { 769const struct nfs_rpc_ops nfs_v2_clientops = {
738 .version = 2, /* protocol version */ 770 .version = 2, /* protocol version */
739 .dentry_ops = &nfs_dentry_operations, 771 .dentry_ops = &nfs_dentry_operations,
@@ -767,9 +799,11 @@ const struct nfs_rpc_ops nfs_v2_clientops = {
767 .pathconf = nfs_proc_pathconf, 799 .pathconf = nfs_proc_pathconf,
768 .decode_dirent = nfs2_decode_dirent, 800 .decode_dirent = nfs2_decode_dirent,
769 .read_setup = nfs_proc_read_setup, 801 .read_setup = nfs_proc_read_setup,
802 .read_pageio_init = nfs_pageio_init_read,
770 .read_rpc_prepare = nfs_proc_read_rpc_prepare, 803 .read_rpc_prepare = nfs_proc_read_rpc_prepare,
771 .read_done = nfs_read_done, 804 .read_done = nfs_read_done,
772 .write_setup = nfs_proc_write_setup, 805 .write_setup = nfs_proc_write_setup,
806 .write_pageio_init = nfs_pageio_init_write,
773 .write_rpc_prepare = nfs_proc_write_rpc_prepare, 807 .write_rpc_prepare = nfs_proc_write_rpc_prepare,
774 .write_done = nfs_write_done, 808 .write_done = nfs_write_done,
775 .commit_setup = nfs_proc_commit_setup, 809 .commit_setup = nfs_proc_commit_setup,
@@ -777,5 +811,9 @@ const struct nfs_rpc_ops nfs_v2_clientops = {
777 .lock = nfs_proc_lock, 811 .lock = nfs_proc_lock,
778 .lock_check_bounds = nfs_lock_check_bounds, 812 .lock_check_bounds = nfs_lock_check_bounds,
779 .close_context = nfs_close_context, 813 .close_context = nfs_close_context,
814 .have_delegation = nfs_have_delegation,
815 .return_delegation = nfs_return_delegation,
816 .alloc_client = nfs_alloc_client,
780 .init_client = nfs_init_client, 817 .init_client = nfs_init_client,
818 .free_client = nfs_free_client,
781}; 819};