| xj | b04a402 | 2021-11-25 15:01:52 +0800 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ | 
|  | 2 | /* | 
|  | 3 | * Copyright (c) 2012 Netapp, Inc. All rights reserved. | 
|  | 4 | * | 
|  | 5 | * Function and structures exported by the NFS module | 
|  | 6 | * for use by NFS version-specific modules. | 
|  | 7 | */ | 
|  | 8 | #ifndef __LINUX_INTERNAL_NFS_H | 
|  | 9 | #define __LINUX_INTERNAL_NFS_H | 
|  | 10 |  | 
|  | 11 | #include <linux/fs.h> | 
|  | 12 | #include <linux/sunrpc/sched.h> | 
|  | 13 | #include <linux/nfs_xdr.h> | 
|  | 14 |  | 
|  | 15 | struct nfs_subversion { | 
|  | 16 | struct module *owner;	/* THIS_MODULE pointer */ | 
|  | 17 | struct file_system_type *nfs_fs;	/* NFS filesystem type */ | 
|  | 18 | const struct rpc_version *rpc_vers;	/* NFS version information */ | 
|  | 19 | const struct nfs_rpc_ops *rpc_ops;	/* NFS operations */ | 
|  | 20 | const struct super_operations *sops;	/* NFS Super operations */ | 
|  | 21 | const struct xattr_handler **xattr;	/* NFS xattr handlers */ | 
|  | 22 | struct list_head list;		/* List of NFS versions */ | 
|  | 23 | }; | 
|  | 24 |  | 
|  | 25 | struct nfs_subversion *get_nfs_version(unsigned int); | 
|  | 26 | void put_nfs_version(struct nfs_subversion *); | 
|  | 27 | void register_nfs_version(struct nfs_subversion *); | 
|  | 28 | void unregister_nfs_version(struct nfs_subversion *); | 
|  | 29 |  | 
|  | 30 | #endif /* __LINUX_INTERNAL_NFS_H */ |