OSDN Git Service

orangefs: saner calling conventions for getting a slot
[uclinux-h8/linux.git] / fs / orangefs / orangefs-bufmap.h
1 /*
2  * (C) 2001 Clemson University and The University of Chicago
3  *
4  * See COPYING in top-level directory.
5  */
6
7 #ifndef __ORANGEFS_BUFMAP_H
8 #define __ORANGEFS_BUFMAP_H
9
10 struct orangefs_bufmap;
11
12 int orangefs_bufmap_size_query(void);
13
14 int orangefs_bufmap_shift_query(void);
15
16 int orangefs_bufmap_initialize(struct ORANGEFS_dev_map_desc *user_desc);
17
18 void orangefs_bufmap_finalize(void);
19
20 void orangefs_bufmap_run_down(void);
21
22 int orangefs_bufmap_get(void);
23
24 void orangefs_bufmap_put(int buffer_index);
25
26 int orangefs_readdir_index_get(void);
27
28 void orangefs_readdir_index_put(int buffer_index);
29
30 int orangefs_bufmap_copy_from_iovec(struct iov_iter *iter,
31                                 int buffer_index,
32                                 size_t size);
33
34 int orangefs_bufmap_copy_to_iovec(struct iov_iter *iter,
35                               int buffer_index,
36                               size_t size);
37
38 size_t orangefs_bufmap_copy_to_user_task_iovec(struct task_struct *tsk,
39                                            struct iovec *iovec,
40                                            unsigned long nr_segs,
41                                            struct orangefs_bufmap *bufmap,
42                                            int buffer_index,
43                                            size_t bytes_to_be_copied);
44
45 #endif /* __ORANGEFS_BUFMAP_H */