include/linux/sunrpc/xdrgen/nlm3.h

Source file repositories/reference/linux-study-clean/include/linux/sunrpc/xdrgen/nlm3.h

File Facts

System
Linux kernel
Corpus path
include/linux/sunrpc/xdrgen/nlm3.h
Extension
.h
Size
4439 bytes
Lines
211
Domain
Core OS
Bucket
Core Kernel Interface
Inferred role
Core OS: implementation source
Status
source implementation candidate

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

struct nlm_stat {
	nlm_stats stat;
};

struct nlm_res {
	netobj cookie;
	struct nlm_stat stat;
};

struct nlm_holder {
	bool exclusive;
	s32 uppid;
	netobj oh;
	u32 l_offset;
	u32 l_len;
};

struct nlm_testrply {
	nlm_stats stat;
	union {
		struct nlm_holder holder;
	} u;
};

struct nlm_testres {
	netobj cookie;
	struct nlm_testrply test_stat;
};

struct nlm_lock {
	string caller_name;
	netobj fh;
	netobj oh;
	s32 uppid;
	u32 l_offset;
	u32 l_len;
};

struct nlm_lockargs {
	netobj cookie;
	bool block;
	bool exclusive;
	struct nlm_lock alock;
	bool reclaim;
	s32 state;
};

struct nlm_cancargs {
	netobj cookie;
	bool block;
	bool exclusive;
	struct nlm_lock alock;
};

struct nlm_testargs {
	netobj cookie;
	bool exclusive;
	struct nlm_lock alock;
};

struct nlm_unlockargs {
	netobj cookie;
	struct nlm_lock alock;
};

enum fsh_mode {
	fsm_DN = 0,
	fsm_DR = 1,
	fsm_DW = 2,
	fsm_DRW = 3,
};

typedef enum fsh_mode fsh_mode;

enum fsh_access {
	fsa_NONE = 0,
	fsa_R = 1,
	fsa_W = 2,
	fsa_RW = 3,
};

typedef enum fsh_access fsh_access;

struct nlm_share {
	string caller_name;
	netobj fh;
	netobj oh;
	fsh_mode mode;
	fsh_access access;
};

Annotation

Implementation Notes