Unverified Commit 46c30cb8 authored by Eric Van Hensbergen's avatar Eric Van Hensbergen
Browse files

9p: Add additional debug flags and open modes



Add some additional debug flags to assist with debugging
cache changes.  Also add some additional open modes so we
can track cache state in fids more directly.

Signed-off-by: default avatarEric Van Hensbergen <ericvh@kernel.org>
parent 8142db4f
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@ enum p9_debug_flags {
	P9_DEBUG_PKT =		(1<<10),
	P9_DEBUG_FSC =		(1<<11),
	P9_DEBUG_VPKT =		(1<<12),
	P9_DEBUG_CACHE =	(1<<13),
	P9_DEBUG_MMAP =		(1<<14),
};

#ifdef CONFIG_NET_9P_DEBUG
@@ -213,6 +215,10 @@ enum p9_open_mode_t {
	P9_ORCLOSE = 0x40,
	P9_OAPPEND = 0x80,
	P9_OEXCL = 0x1000,
	P9L_MODE_MASK = 0x1FFF, /* don't send anything under this to server */
	P9L_DIRECT = 0x2000, /* cache disabled */
	P9L_NOWRITECACHE = 0x4000, /* no write caching  */
	P9L_LOOSE = 0x8000, /* loose cache */
};

/**
+4 −4
Original line number Diff line number Diff line
@@ -1230,9 +1230,9 @@ int p9_client_open(struct p9_fid *fid, int mode)
		return -EINVAL;

	if (p9_is_proto_dotl(clnt))
		req = p9_client_rpc(clnt, P9_TLOPEN, "dd", fid->fid, mode);
		req = p9_client_rpc(clnt, P9_TLOPEN, "dd", fid->fid, mode & P9L_MODE_MASK);
	else
		req = p9_client_rpc(clnt, P9_TOPEN, "db", fid->fid, mode);
		req = p9_client_rpc(clnt, P9_TOPEN, "db", fid->fid, mode & P9L_MODE_MASK);
	if (IS_ERR(req)) {
		err = PTR_ERR(req);
		goto error;
@@ -1277,7 +1277,7 @@ int p9_client_create_dotl(struct p9_fid *ofid, const char *name, u32 flags,
		return -EINVAL;

	req = p9_client_rpc(clnt, P9_TLCREATE, "dsddg", ofid->fid, name, flags,
			    mode, gid);
			    mode & P9L_MODE_MASK, gid);
	if (IS_ERR(req)) {
		err = PTR_ERR(req);
		goto error;
@@ -1321,7 +1321,7 @@ int p9_client_fcreate(struct p9_fid *fid, const char *name, u32 perm, int mode,
		return -EINVAL;

	req = p9_client_rpc(clnt, P9_TCREATE, "dsdb?s", fid->fid, name, perm,
			    mode, extension);
			    mode & P9L_MODE_MASK, extension);
	if (IS_ERR(req)) {
		err = PTR_ERR(req);
		goto error;