Re: [Qemu-devel] [PULL V2 8/8] COLO-compare: Optimize tcp compare trace event

2017-04-26 Thread Zhang Chen



On 04/27/2017 10:28 AM, Jason Wang wrote:



On 2017年04月26日 23:55, Peter Maydell wrote:
On 26 April 2017 at 16:18, Peter Maydell  
wrote:

On 25 April 2017 at 12:26, Jason Wang  wrote:

From: Zhang Chen 

Optimize two trace events as one, adjust print format make
it easy to read. rename trace_colo_compare_pkt_info_src/dst
to trace_colo_compare_tcp_info.

Signed-off-by: Zhang Chen 
Signed-off-by: Jason Wang 

Hi. This commit has broken building with the UST backend,
because it is effectively reverting commit 2dfe5113b11,
which split this trace line into two events because the
UST backend has a limit on the number of arguments that
a UST event can take.

Could you revert it, please?

...actually it looks like it reverts cleanly on master, so
I'll just revert it directly.

thanks
-- PMM



Zheng Chen, consider the UST limitation, I think we can just leave the 
two tracepoints as is (of course you can improve readability).


OK, I will send a independent patch to improve readability.

Thanks
Zhang Chen



Thanks





--
Thanks
Zhang Chen






Re: [Qemu-devel] [PULL V2 8/8] COLO-compare: Optimize tcp compare trace event

2017-04-26 Thread Jason Wang



On 2017年04月26日 23:55, Peter Maydell wrote:

On 26 April 2017 at 16:18, Peter Maydell  wrote:

On 25 April 2017 at 12:26, Jason Wang  wrote:

From: Zhang Chen 

Optimize two trace events as one, adjust print format make
it easy to read. rename trace_colo_compare_pkt_info_src/dst
to trace_colo_compare_tcp_info.

Signed-off-by: Zhang Chen 
Signed-off-by: Jason Wang 

Hi. This commit has broken building with the UST backend,
because it is effectively reverting commit 2dfe5113b11,
which split this trace line into two events because the
UST backend has a limit on the number of arguments that
a UST event can take.

Could you revert it, please?

...actually it looks like it reverts cleanly on master, so
I'll just revert it directly.

thanks
-- PMM



Zheng Chen, consider the UST limitation, I think we can just leave the 
two tracepoints as is (of course you can improve readability).


Thanks



Re: [Qemu-devel] [PULL V2 8/8] COLO-compare: Optimize tcp compare trace event

2017-04-26 Thread Peter Maydell
On 26 April 2017 at 16:18, Peter Maydell  wrote:
> On 25 April 2017 at 12:26, Jason Wang  wrote:
>> From: Zhang Chen 
>>
>> Optimize two trace events as one, adjust print format make
>> it easy to read. rename trace_colo_compare_pkt_info_src/dst
>> to trace_colo_compare_tcp_info.
>>
>> Signed-off-by: Zhang Chen 
>> Signed-off-by: Jason Wang 
>
> Hi. This commit has broken building with the UST backend,
> because it is effectively reverting commit 2dfe5113b11,
> which split this trace line into two events because the
> UST backend has a limit on the number of arguments that
> a UST event can take.
>
> Could you revert it, please?

...actually it looks like it reverts cleanly on master, so
I'll just revert it directly.

thanks
-- PMM



Re: [Qemu-devel] [PULL V2 8/8] COLO-compare: Optimize tcp compare trace event

2017-04-26 Thread Peter Maydell
On 25 April 2017 at 12:26, Jason Wang  wrote:
> From: Zhang Chen 
>
> Optimize two trace events as one, adjust print format make
> it easy to read. rename trace_colo_compare_pkt_info_src/dst
> to trace_colo_compare_tcp_info.
>
> Signed-off-by: Zhang Chen 
> Signed-off-by: Jason Wang 

Hi. This commit has broken building with the UST backend,
because it is effectively reverting commit 2dfe5113b11,
which split this trace line into two events because the
UST backend has a limit on the number of arguments that
a UST event can take.

Could you revert it, please?

Travis failure log:
https://travis-ci.org/qemu/qemu/jobs/225628045

thanks
-- PMM



[Qemu-devel] [PULL V2 8/8] COLO-compare: Optimize tcp compare trace event

2017-04-25 Thread Jason Wang
From: Zhang Chen 

Optimize two trace events as one, adjust print format make
it easy to read. rename trace_colo_compare_pkt_info_src/dst
to trace_colo_compare_tcp_info.

Signed-off-by: Zhang Chen 
Signed-off-by: Jason Wang 
---
 net/colo-compare.c | 29 +
 net/trace-events   |  3 +--
 2 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/net/colo-compare.c b/net/colo-compare.c
index 4ab80b1..03ddebe 100644
--- a/net/colo-compare.c
+++ b/net/colo-compare.c
@@ -264,18 +264,23 @@ static int colo_packet_compare_tcp(Packet *spkt, Packet 
*ppkt)
 res = -1;
 }
 
-if (res != 0 && trace_event_get_state(TRACE_COLO_COMPARE_MISCOMPARE)) {
-trace_colo_compare_pkt_info_src(inet_ntoa(ppkt->ip->ip_src),
-ntohl(stcp->th_seq),
-ntohl(stcp->th_ack),
-res, stcp->th_flags,
-spkt->size);
-
-trace_colo_compare_pkt_info_dst(inet_ntoa(ppkt->ip->ip_dst),
-ntohl(ptcp->th_seq),
-ntohl(ptcp->th_ack),
-res, ptcp->th_flags,
-ppkt->size);
+if (res && trace_event_get_state(TRACE_COLO_COMPARE_MISCOMPARE)) {
+char ip_src[20], ip_dst[20];
+
+strcpy(ip_src, inet_ntoa(ppkt->ip->ip_src));
+strcpy(ip_dst, inet_ntoa(ppkt->ip->ip_dst));
+
+trace_colo_compare_tcp_info(ip_src,
+ip_dst,
+ntohl(ptcp->th_seq),
+ntohl(stcp->th_seq),
+ntohl(ptcp->th_ack),
+ntohl(stcp->th_ack),
+res,
+ptcp->th_flags,
+stcp->th_flags,
+ppkt->size,
+spkt->size);
 
 qemu_hexdump((char *)ppkt->data, stderr,
  "colo-compare ppkt", ppkt->size);
diff --git a/net/trace-events b/net/trace-events
index 35198bc..123cb28 100644
--- a/net/trace-events
+++ b/net/trace-events
@@ -13,8 +13,7 @@ colo_compare_icmp_miscompare(const char *sta, int size) ": %s 
= %d"
 colo_compare_ip_info(int psize, const char *sta, const char *stb, int ssize, 
const char *stc, const char *std) "ppkt size = %d, ip_src = %s, ip_dst = %s, 
spkt size = %d, ip_src = %s, ip_dst = %s"
 colo_old_packet_check_found(int64_t old_time) "%" PRId64
 colo_compare_miscompare(void) ""
-colo_compare_pkt_info_src(const char *src, uint32_t sseq, uint32_t sack, int 
res, uint32_t sflag, int ssize) "src/dst: %s s: seq/ack=%u/%u res=%d flags=%x 
spkt_size: %d\n"
-colo_compare_pkt_info_dst(const char *dst, uint32_t dseq, uint32_t dack, int 
res, uint32_t dflag, int dsize) "src/dst: %s d: seq/ack=%u/%u res=%d flags=%x 
dpkt_size: %d\n"
+colo_compare_tcp_info(const char *src, const char *dst, uint32_t pseq, 
uint32_t sseq, uint32_t pack, uint32_t sack, int res, uint32_t pflag, uint32_t 
sflag, int psize, int ssize) "src/dst: %s/%s pseq/sseq:%u/%u pack/sack:%u/%u 
res=%d pflags/sflag:%x/%x psize/ssize:%d/%d \n"
 
 # net/filter-rewriter.c
 colo_filter_rewriter_debug(void) ""
-- 
2.7.4