Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c0aa4caf authored by Aneesh Kumar K.V's avatar Aneesh Kumar K.V Committed by Eric Van Hensbergen
Browse files

net/9p: Implement syncfs 9P operation

parent db5841d4
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -139,6 +139,8 @@ do { \
 */

enum p9_msg_t {
	P9_TSYNCFS = 0,
	P9_RSYNCFS,
	P9_TLERROR = 6,
	P9_RLERROR,
	P9_TSTATFS = 8,
+1 −0
Original line number Diff line number Diff line
@@ -230,6 +230,7 @@ int p9_client_create_dotl(struct p9_fid *ofid, char *name, u32 flags, u32 mode,
		gid_t gid, struct p9_qid *qid);
int p9_client_clunk(struct p9_fid *fid);
int p9_client_fsync(struct p9_fid *fid, int datasync);
int p9_client_sync_fs(struct p9_fid *fid);
int p9_client_remove(struct p9_fid *fid);
int p9_client_read(struct p9_fid *fid, char *data, char __user *udata,
							u64 offset, u32 count);
+21 −0
Original line number Diff line number Diff line
@@ -1220,6 +1220,27 @@ int p9_client_fsync(struct p9_fid *fid, int datasync)
}
EXPORT_SYMBOL(p9_client_fsync);

int p9_client_sync_fs(struct p9_fid *fid)
{
	int err = 0;
	struct p9_req_t *req;
	struct p9_client *clnt;

	P9_DPRINTK(P9_DEBUG_9P, ">>> TSYNC_FS fid %d\n", fid->fid);

	clnt = fid->clnt;
	req = p9_client_rpc(clnt, P9_TSYNCFS, "d", fid->fid);
	if (IS_ERR(req)) {
		err = PTR_ERR(req);
		goto error;
	}
	P9_DPRINTK(P9_DEBUG_9P, "<<< RSYNCFS fid %d\n", fid->fid);
	p9_free_req(clnt, req);
error:
	return err;
}
EXPORT_SYMBOL(p9_client_sync_fs);

int p9_client_clunk(struct p9_fid *fid)
{
	int err;