1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2/*
3 *  linux/include/linux/nfs_fs.h
4 *
5 *  Copyright (C) 1992  Rick Sladkey
6 *
7 *  OS-specific nfs filesystem definitions and declarations
8 */
9
10#ifndef _UAPI_LINUX_NFS_FS_H
11#define _UAPI_LINUX_NFS_FS_H
12
13#include <linux/magic.h>
14
15/* Default timeout values */
16#define NFS_DEF_UDP_TIMEO	(11)
17#define NFS_DEF_UDP_RETRANS	(3)
18#define NFS_DEF_TCP_TIMEO	(600)
19#define NFS_DEF_TCP_RETRANS	(2)
20
21#define NFS_MAX_UDP_TIMEOUT	(60*HZ)
22#define NFS_MAX_TCP_TIMEOUT	(600*HZ)
23
24#define NFS_DEF_ACREGMIN	(3)
25#define NFS_DEF_ACREGMAX	(60)
26#define NFS_DEF_ACDIRMIN	(30)
27#define NFS_DEF_ACDIRMAX	(60)
28
29/*
30 * When flushing a cluster of dirty pages, there can be different
31 * strategies:
32 */
33#define FLUSH_SYNC		1	/* file being synced, or contention */
34#define FLUSH_STABLE		4	/* commit to stable storage */
35#define FLUSH_LOWPRI		8	/* low priority background flush */
36#define FLUSH_HIGHPRI		16	/* high priority memory reclaim flush */
37#define FLUSH_COND_STABLE	32	/* conditional stable write - only stable
38					 * if everything fits in one RPC */
39
40
41/*
42 * NFS debug flags
43 */
44#define NFSDBG_VFS		0x0001
45#define NFSDBG_DIRCACHE		0x0002
46#define NFSDBG_LOOKUPCACHE	0x0004
47#define NFSDBG_PAGECACHE	0x0008
48#define NFSDBG_PROC		0x0010
49#define NFSDBG_XDR		0x0020
50#define NFSDBG_FILE		0x0040
51#define NFSDBG_ROOT		0x0080
52#define NFSDBG_CALLBACK		0x0100
53#define NFSDBG_CLIENT		0x0200
54#define NFSDBG_MOUNT		0x0400
55#define NFSDBG_FSCACHE		0x0800 /* unused */
56#define NFSDBG_PNFS		0x1000
57#define NFSDBG_PNFS_LD		0x2000
58#define NFSDBG_STATE		0x4000
59#define NFSDBG_XATTRCACHE	0x8000
60#define NFSDBG_ALL		0xFFFF
61
62
63#endif /* _UAPI_LINUX_NFS_FS_H */
64