xref: /linux/fs/fuse/dev.h (revision 56b4332e12a567eed708bb76eb69d43238a06183)
1f1434857SMiklos Szeredi /* SPDX-License-Identifier: GPL-2.0 */
2f1434857SMiklos Szeredi 
3f1434857SMiklos Szeredi #ifndef _FS_FUSE_DEV_H
4f1434857SMiklos Szeredi #define _FS_FUSE_DEV_H
5f1434857SMiklos Szeredi 
6a73a7883SMiklos Szeredi #include <linux/cleanup.h>
7a73a7883SMiklos Szeredi 
82b07cbc4SMiklos Szeredi /** Maximum number of outstanding background requests */
92b07cbc4SMiklos Szeredi #define FUSE_DEFAULT_MAX_BACKGROUND 12
102b07cbc4SMiklos Szeredi 
11f1434857SMiklos Szeredi struct fuse_conn;
12a73a7883SMiklos Szeredi struct fuse_chan;
13d8189630SMiklos Szeredi struct fuse_dev;
14a73a7883SMiklos Szeredi 
15a73a7883SMiklos Szeredi struct fuse_chan *fuse_chan_new(void);
16b88fb2b9SMiklos Szeredi struct fuse_chan *fuse_dev_chan_new(void);
17b88fb2b9SMiklos Szeredi void fuse_chan_release(struct fuse_chan *fch);
18a73a7883SMiklos Szeredi void fuse_chan_free(struct fuse_chan *fch);
19a73a7883SMiklos Szeredi DEFINE_FREE(fuse_chan_free, struct fuse_chan *, if (_T) fuse_chan_free(_T))
20f1434857SMiklos Szeredi 
21d8189630SMiklos Szeredi void fuse_dev_install(struct fuse_dev *fud, struct fuse_conn *fc);
22d8189630SMiklos Szeredi void fuse_dev_put(struct fuse_dev *fud);
23d8189630SMiklos Szeredi 
24*56b4332eSMiklos Szeredi void fuse_init_server_timeout(struct fuse_chan *fch, unsigned int timeout);
25f1434857SMiklos Szeredi 
26f1434857SMiklos Szeredi #endif /* _FS_FUSE_DEV_H */
27