xref: /linux/fs/orangefs/orangefs-bufmap.h (revision fde05627a2d5cb85a2bded96d11f493e6671ecaa)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * (C) 2001 Clemson University and The University of Chicago
4  *
5  * See COPYING in top-level directory.
6  */
7 
8 #ifndef __ORANGEFS_BUFMAP_H
9 #define __ORANGEFS_BUFMAP_H
10 
11 int orangefs_bufmap_size_query(void);
12 
13 int orangefs_bufmap_initialize(struct ORANGEFS_dev_map_desc *user_desc);
14 
15 void orangefs_bufmap_finalize(void);
16 
17 void orangefs_bufmap_run_down(void);
18 
19 int orangefs_bufmap_get(void);
20 
21 void orangefs_bufmap_put(int buffer_index);
22 
23 int orangefs_readdir_index_get(void);
24 
25 void orangefs_readdir_index_put(int buffer_index);
26 
27 int orangefs_bufmap_copy_from_iovec(struct iov_iter *iter,
28 				int buffer_index,
29 				size_t size);
30 
31 int orangefs_bufmap_copy_to_iovec(struct iov_iter *iter,
32 			      int buffer_index,
33 			      size_t size);
34 
35 
36 #endif /* __ORANGEFS_BUFMAP_H */
37