diff options
Diffstat (limited to 'net/9p/protocol.c')
-rw-r--r-- | net/9p/protocol.c | 44 |
1 files changed, 17 insertions, 27 deletions
diff --git a/net/9p/protocol.c b/net/9p/protocol.c index a873277cb996..df58375ea6b3 100644 --- a/net/9p/protocol.c +++ b/net/9p/protocol.c | |||
@@ -44,30 +44,24 @@ p9pdu_writef(struct p9_fcall *pdu, int proto_version, const char *fmt, ...); | |||
44 | void | 44 | void |
45 | p9pdu_dump(int way, struct p9_fcall *pdu) | 45 | p9pdu_dump(int way, struct p9_fcall *pdu) |
46 | { | 46 | { |
47 | int i, n; | 47 | int len = pdu->size; |
48 | u8 *data = pdu->sdata; | 48 | |
49 | int datalen = pdu->size; | 49 | if ((p9_debug_level & P9_DEBUG_VPKT) != P9_DEBUG_VPKT) { |
50 | char buf[255]; | 50 | if ((p9_debug_level & P9_DEBUG_PKT) == P9_DEBUG_PKT) { |
51 | int buflen = 255; | 51 | if (len > 32) |
52 | 52 | len = 32; | |
53 | i = n = 0; | 53 | } else { |
54 | if (datalen > (buflen-16)) | 54 | /* shouldn't happen */ |
55 | datalen = buflen-16; | 55 | return; |
56 | while (i < datalen) { | 56 | } |
57 | n += scnprintf(buf + n, buflen - n, "%02x ", data[i]); | ||
58 | if (i%4 == 3) | ||
59 | n += scnprintf(buf + n, buflen - n, " "); | ||
60 | if (i%32 == 31) | ||
61 | n += scnprintf(buf + n, buflen - n, "\n"); | ||
62 | |||
63 | i++; | ||
64 | } | 57 | } |
65 | n += scnprintf(buf + n, buflen - n, "\n"); | ||
66 | 58 | ||
67 | if (way) | 59 | if (way) |
68 | P9_DPRINTK(P9_DEBUG_PKT, "[[[(%d) %s\n", datalen, buf); | 60 | print_hex_dump_bytes("[9P] ", DUMP_PREFIX_OFFSET, pdu->sdata, |
61 | len); | ||
69 | else | 62 | else |
70 | P9_DPRINTK(P9_DEBUG_PKT, "]]](%d) %s\n", datalen, buf); | 63 | print_hex_dump_bytes("]9P[ ", DUMP_PREFIX_OFFSET, pdu->sdata, |
64 | len); | ||
71 | } | 65 | } |
72 | #else | 66 | #else |
73 | void | 67 | void |
@@ -610,7 +604,7 @@ int p9stat_read(char *buf, int len, struct p9_wstat *st, int proto_version) | |||
610 | ret = p9pdu_readf(&fake_pdu, proto_version, "S", st); | 604 | ret = p9pdu_readf(&fake_pdu, proto_version, "S", st); |
611 | if (ret) { | 605 | if (ret) { |
612 | P9_DPRINTK(P9_DEBUG_9P, "<<< p9stat_read failed: %d\n", ret); | 606 | P9_DPRINTK(P9_DEBUG_9P, "<<< p9stat_read failed: %d\n", ret); |
613 | p9pdu_dump(1, &fake_pdu); | 607 | P9_DUMP_PKT(0, &fake_pdu); |
614 | } | 608 | } |
615 | 609 | ||
616 | return ret; | 610 | return ret; |
@@ -632,11 +626,7 @@ int p9pdu_finalize(struct p9_fcall *pdu) | |||
632 | err = p9pdu_writef(pdu, 0, "d", size); | 626 | err = p9pdu_writef(pdu, 0, "d", size); |
633 | pdu->size = size; | 627 | pdu->size = size; |
634 | 628 | ||
635 | #ifdef CONFIG_NET_9P_DEBUG | 629 | P9_DUMP_PKT(0, pdu); |
636 | if ((p9_debug_level & P9_DEBUG_PKT) == P9_DEBUG_PKT) | ||
637 | p9pdu_dump(0, pdu); | ||
638 | #endif | ||
639 | |||
640 | P9_DPRINTK(P9_DEBUG_9P, ">>> size=%d type: %d tag: %d\n", pdu->size, | 630 | P9_DPRINTK(P9_DEBUG_9P, ">>> size=%d type: %d tag: %d\n", pdu->size, |
641 | pdu->id, pdu->tag); | 631 | pdu->id, pdu->tag); |
642 | 632 | ||
@@ -669,7 +659,7 @@ int p9dirent_read(char *buf, int len, struct p9_dirent *dirent, | |||
669 | &dirent->d_off, &dirent->d_type, &nameptr); | 659 | &dirent->d_off, &dirent->d_type, &nameptr); |
670 | if (ret) { | 660 | if (ret) { |
671 | P9_DPRINTK(P9_DEBUG_9P, "<<< p9dirent_read failed: %d\n", ret); | 661 | P9_DPRINTK(P9_DEBUG_9P, "<<< p9dirent_read failed: %d\n", ret); |
672 | p9pdu_dump(1, &fake_pdu); | 662 | P9_DUMP_PKT(1, &fake_pdu); |
673 | goto out; | 663 | goto out; |
674 | } | 664 | } |
675 | 665 | ||