Lines Matching refs:pdu
27 p9pdu_writef(struct p9_fcall *pdu, int proto_version, const char *fmt, ...);
44 size_t pdu_read(struct p9_fcall *pdu, void *data, size_t size) in pdu_read() argument
46 size_t len = min(pdu->size - pdu->offset, size); in pdu_read()
48 memcpy(data, &pdu->sdata[pdu->offset], len); in pdu_read()
49 pdu->offset += len; in pdu_read()
53 static size_t pdu_write(struct p9_fcall *pdu, const void *data, size_t size) in pdu_write() argument
55 size_t len = min(pdu->capacity - pdu->size, size); in pdu_write()
57 memcpy(&pdu->sdata[pdu->size], data, len); in pdu_write()
58 pdu->size += len; in pdu_write()
63 pdu_write_u(struct p9_fcall *pdu, struct iov_iter *from, size_t size) in pdu_write_u() argument
65 size_t len = min(pdu->capacity - pdu->size, size); in pdu_write_u()
68 if (!copy_from_iter_full(&pdu->sdata[pdu->size], len, &i)) in pdu_write_u()
71 pdu->size += len; in pdu_write_u()
92 p9pdu_vreadf(struct p9_fcall *pdu, int proto_version, const char *fmt, in p9pdu_vreadf() argument
102 if (pdu_read(pdu, val, sizeof(*val))) { in p9pdu_vreadf()
111 if (pdu_read(pdu, &le_val, sizeof(le_val))) { in p9pdu_vreadf()
121 if (pdu_read(pdu, &le_val, sizeof(le_val))) { in p9pdu_vreadf()
131 if (pdu_read(pdu, &le_val, sizeof(le_val))) { in p9pdu_vreadf()
142 errcode = p9pdu_readf(pdu, proto_version, in p9pdu_vreadf()
152 if (pdu_read(pdu, *sptr, len)) { in p9pdu_vreadf()
163 if (pdu_read(pdu, &le_val, sizeof(le_val))) { in p9pdu_vreadf()
173 if (pdu_read(pdu, &le_val, sizeof(le_val))) { in p9pdu_vreadf()
184 errcode = p9pdu_readf(pdu, proto_version, "bdq", in p9pdu_vreadf()
198 p9pdu_readf(pdu, proto_version, in p9pdu_vreadf()
218 p9pdu_readf(pdu, proto_version, "d", count); in p9pdu_vreadf()
222 pdu->size - pdu->offset); in p9pdu_vreadf()
223 *data = &pdu->sdata[pdu->offset]; in p9pdu_vreadf()
231 errcode = p9pdu_readf(pdu, proto_version, in p9pdu_vreadf()
247 p9pdu_readf(pdu, in p9pdu_vreadf()
276 p9pdu_readf(pdu, proto_version, "w", nwqid); in p9pdu_vreadf()
291 p9pdu_readf(pdu, in p9pdu_vreadf()
312 p9pdu_readf(pdu, proto_version, in p9pdu_vreadf()
351 p9pdu_vwritef(struct p9_fcall *pdu, int proto_version, const char *fmt, in p9pdu_vwritef() argument
361 if (pdu_write(pdu, &val, sizeof(val))) in p9pdu_vwritef()
367 if (pdu_write(pdu, &val, sizeof(val))) in p9pdu_vwritef()
373 if (pdu_write(pdu, &val, sizeof(val))) in p9pdu_vwritef()
379 if (pdu_write(pdu, &val, sizeof(val))) in p9pdu_vwritef()
390 errcode = p9pdu_writef(pdu, proto_version, in p9pdu_vwritef()
392 if (!errcode && pdu_write(pdu, sptr, len)) in p9pdu_vwritef()
400 if (pdu_write(pdu, &val, sizeof(val))) in p9pdu_vwritef()
407 if (pdu_write(pdu, &val, sizeof(val))) in p9pdu_vwritef()
414 p9pdu_writef(pdu, proto_version, "bdq", in p9pdu_vwritef()
422 p9pdu_writef(pdu, proto_version, in p9pdu_vwritef()
437 errcode = p9pdu_writef(pdu, proto_version, "d", in p9pdu_vwritef()
439 if (!errcode && pdu_write_u(pdu, from, count)) in p9pdu_vwritef()
447 errcode = p9pdu_writef(pdu, proto_version, "w", in p9pdu_vwritef()
454 p9pdu_writef(pdu, in p9pdu_vwritef()
469 errcode = p9pdu_writef(pdu, proto_version, "w", in p9pdu_vwritef()
476 p9pdu_writef(pdu, in p9pdu_vwritef()
490 errcode = p9pdu_writef(pdu, proto_version, in p9pdu_vwritef()
520 int p9pdu_readf(struct p9_fcall *pdu, int proto_version, const char *fmt, ...) in p9pdu_readf() argument
526 ret = p9pdu_vreadf(pdu, proto_version, fmt, ap); in p9pdu_readf()
533 p9pdu_writef(struct p9_fcall *pdu, int proto_version, const char *fmt, ...) in p9pdu_writef() argument
539 ret = p9pdu_vwritef(pdu, proto_version, fmt, ap); in p9pdu_writef()
566 int p9pdu_prepare(struct p9_fcall *pdu, int16_t tag, int8_t type) in p9pdu_prepare() argument
568 pdu->id = type; in p9pdu_prepare()
569 return p9pdu_writef(pdu, 0, "dbw", 0, type, tag); in p9pdu_prepare()
572 int p9pdu_finalize(struct p9_client *clnt, struct p9_fcall *pdu) in p9pdu_finalize() argument
574 int size = pdu->size; in p9pdu_finalize()
577 pdu->size = 0; in p9pdu_finalize()
578 err = p9pdu_writef(pdu, 0, "d", size); in p9pdu_finalize()
579 pdu->size = size; in p9pdu_finalize()
581 trace_9p_protocol_dump(clnt, pdu); in p9pdu_finalize()
583 pdu->size, pdu->id, pdu->tag); in p9pdu_finalize()
588 void p9pdu_reset(struct p9_fcall *pdu) in p9pdu_reset() argument
590 pdu->offset = 0; in p9pdu_reset()
591 pdu->size = 0; in p9pdu_reset()