aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc')
0 files changed, 0 insertions, 0 deletions
/option> The LITMUS^RT kernel.Bjoern Brandenburg
aboutsummaryrefslogblamecommitdiffstats
path: root/fs/nfs/nfs4_fs.h
blob: 7ef19ce6d83262cc40c54410973e21303bd1441a (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11










                                                         
                             
 

                                     

                          

             
                        
                                      
                             
                               

                                 
                             
                               
                               
                                       
                             
                                      

  


                                            

                               
                           
 

                                                   

                                                        
                                                       
                                                      
                                              

                                                                      


                                                                   

  

                             
                            
                     

                    


                                                                           


                  
                                           
                              
                              








                                                                                 


                                                                     

                         
                                        

                                        
                                            

                                                              


                                      
                                      
                                       
                                          
                                                 
                                                  

  




                                 



                                 











                                                                            










                                         

                                                                         
                                                                           

                                         
                                                 

                                           
                                         




                                



                                                                               

                                                                                 
                                                                       
                                                                                










                                                                                     
                                                                           
 
                                                                               

                                                                                
 
                                                                    


                                                                             
                                                                              






                       
                                 
                            


                                
                           
                           

                                                                            
                                                                      
                                                                
                                                     

                                                                         

  
                                   
                                                                                     
                                                                                
                                                                   

  
                                                             



                                                                   
 


                                            
                     
                                                                  
                                                                                          

                                                                    
 
                

                                                                                                                             
                                                                                           
                                                                                      
                                                                                
                                                         
                                                                      
                                                                       
                                                                             
                                                                                       



                                                                                         
                                                                                                 
                                                            
                                                         
                                                     


                                                     
 
                            





                                                                                    
                                                                               
                                       

                                                                               
                                       

                                                                               

                                                           
                                                                      
                                             






                                                                    





                                                                  
                           





                                                                                    
                                                                               
                                      
 
                             

                 
 

                                         





                                    


                     
                            
 
                                                               
 
                                      

                                         
                                       
                                             
 

                                           

                                                                         
                  
                                                             
                                                              
                                                  
                                                   

                 
                                                                   
                                                                      
                                                                    



                                                                 
                            
                                                                   

                                                                 
                                                                       
                                                                             
                                                                              
 
     
                                                                                        

 
                            
 
                                                                                                    
                                                            
                                                         

                                                                                          

                                                           
                                                                     

                                                                 
                                                              

                                                                     
                                                             
                                                                     
                                                                                          
                                                                                 
                                                          
                                                                    
                                                             
                                                                               
                                                                      
                                                       
 
                                                                                            


                                                                                
                                                       

                                                    
                                                                                         
 

                                       
                 
                      
                                    
                                                                                                   


                                             
 


                                                               









                                            
                                               



      
               





                                                 
                                                 
 

                                                                                
                                       



                                                                                       
                                                   

 




                                                                          

     

                                               


                                     
/*
 * linux/fs/nfs/nfs4_fs.h
 *
 * Copyright (C) 2005 Trond Myklebust
 *
 * NFSv4-specific filesystem definitions and declarations
 */

#ifndef __LINUX_FS_NFS_NFS4_FS_H
#define __LINUX_FS_NFS_NFS4_FS_H

#if IS_ENABLED(CONFIG_NFS_V4)

#define NFS4_MAX_LOOP_ON_RECOVER (10)

#include <linux/seqlock.h>

struct idmap;

enum nfs4_client_state {
	NFS4CLNT_MANAGER_RUNNING  = 0,
	NFS4CLNT_CHECK_LEASE,
	NFS4CLNT_LEASE_EXPIRED,
	NFS4CLNT_RECLAIM_REBOOT,
	NFS4CLNT_RECLAIM_NOGRACE,
	NFS4CLNT_DELEGRETURN,
	NFS4CLNT_SESSION_RESET,
	NFS4CLNT_LEASE_CONFIRM,
	NFS4CLNT_SERVER_SCOPE_MISMATCH,
	NFS4CLNT_PURGE_STATE,
	NFS4CLNT_BIND_CONN_TO_SESSION,
};

#define NFS4_RENEW_TIMEOUT		0x01
#define NFS4_RENEW_DELEGATION_CB	0x02

struct nfs4_minor_version_ops {
	u32	minor_version;
	unsigned init_caps;

	int	(*call_sync)(struct rpc_clnt *clnt,
			struct nfs_server *server,
			struct rpc_message *msg,
			struct nfs4_sequence_args *args,
			struct nfs4_sequence_res *res);
	bool	(*match_stateid)(const nfs4_stateid *,
			const nfs4_stateid *);
	int	(*find_root_sec)(struct nfs_server *, struct nfs_fh *,
			struct nfs_fsinfo *);
	const struct nfs4_state_recovery_ops *reboot_recovery_ops;
	const struct nfs4_state_recovery_ops *nograce_recovery_ops;
	const struct nfs4_state_maintenance_ops *state_renewal_ops;
};

#define NFS_SEQID_CONFIRMED 1
struct nfs_seqid_counter {
	ktime_t create_time;
	int owner_id;
	int flags;
	u32 counter;
	spinlock_t lock;		/* Protects the list */
	struct list_head list;		/* Defines sequence of RPC calls */
	struct rpc_wait_queue	wait;	/* RPC call delay queue */
};

struct nfs_seqid {
	struct nfs_seqid_counter *sequence;
	struct list_head list;
	struct rpc_task *task;
};

static inline void nfs_confirm_seqid(struct nfs_seqid_counter *seqid, int status)
{