From: Arnaldo Carvalho de Melo <acme-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: "Ilpo Järvinen" <ilpo.jarvinen-pxSi+dnQzZMxHbG02/KK1g@public.gmane.org>
Cc: dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: codiff misses changes if inline -> not inlined?
Date: Thu, 3 Jan 2008 13:10:44 -0200 [thread overview]
Message-ID: <20080103151044.GD29523@ghostprotocols.net> (raw)
In-Reply-To: <Pine.LNX.4.64.0801031528400.14949-Y/UOj9v5BLQhZigby9b+C6cUovnZ0M2TMR2xtNvyitY@public.gmane.org>
CCing dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org so that people know about this fix.
Em Thu, Jan 03, 2008 at 03:40:16PM +0200, Ilpo Järvinen escreveu:
> Hi,
>
> I've had a problem with codiff when playing around with inlines. It seems
> to miss completely the resizement of inlined function from zero to
> something. Here's one example (relevant patch attached):
>
> $ codiff tcp_input.o.old tcp_input.o
> net/ipv4/tcp_input.c:
> tcp_dsack_extend | -73
> tcp_data_queue | -17
> 2 functions changed, 90 bytes removed
>
> $ pfunct -s tcp_input.o.old | grep "tcp_sack_extend"
> $ pfunct -s tcp_input.o | grep "tcp_sack_extend"
> tcp_sack_extend: 66
>
> Isn't that tcp_sack_extend | +66 missing from codiff's output???
>
>
> There's nothing special in the tcp_sack_extend(), any inline (at least in
> .c files) will do.
Fixed:
[acme@doppio pahole]$ codiff /tmp/tcp_input.o.before /tmp/tcp_input.o.after
/home/acme/git/net-2.6.25/net/ipv4/tcp_input.c:
tcp_dsack_extend | -29
tcp_data_queue | -49
2 functions changed, 78 bytes removed
/home/acme/git/net-2.6.25/net/ipv4/tcp_input.c:
tcp_sack_extend | +34
1 function changed, 34 bytes added
/tmp/tcp_input.o.after:
3 functions changed, 34 bytes added, 78 bytes removed, diff: -44
[acme@doppio pahole]$
And if you use --verbose it'll tell you that in fact it was
"(uninlined)":
[acme@doppio pahole]$ codiff -V /tmp/tcp_input.o.before /tmp/tcp_input.o.after
/home/acme/git/net-2.6.25/net/ipv4/tcp_input.c:
tcp_dsack_extend | -29 # 55 -> 26, # inlines: 1 -> 0, size inlines: 34 -> 0
tcp_data_queue | -49 # 2892 -> 2843, size inlines: 1247 -> 1240
2 functions changed, 78 bytes removed
/home/acme/git/net-2.6.25/net/ipv4/tcp_input.c:
tcp_sack_extend | +34 (uninlined)
1 function changed, 34 bytes added
/tmp/tcp_input.o.after:
3 functions changed, 34 bytes added, 78 bytes removed, diff: -44
[acme@doppio pahole]$
> From d9cd8eb51562d2d3e36fb61765b24401f97e76be Mon Sep 17 00:00:00 2001
> From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= <ilpo.jarvinen@helsinki.fi>
> Date: Sat, 29 Dec 2007 13:51:54 +0200
> Subject: [PATCH] [TCP]: Remove inline from tcp_sack_extend()
> Content-Type: text/plain; charset=ISO-8859-1
> Content-Transfer-Encoding: 8bit
>
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen-pxSi+dnQzZMxHbG02/KK1g@public.gmane.org>
> ---
> net/ipv4/tcp_input.c | 3 +--
> 1 files changed, 1 insertions(+), 2 deletions(-)
>
>diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
>index d5b6adf..48f52cb 100644
>--- a/net/ipv4/tcp_input.c
>+++ b/net/ipv4/tcp_input.c
>@@ -3581,8 +3581,7 @@ static void tcp_fin(struct sk_buff *skb, struct sock *sk, struct tcphdr *th)
> }
> }
>
>-static inline int tcp_sack_extend(struct tcp_sack_block *sp, u32 seq,
>- u32 end_seq)
>+static int tcp_sack_extend(struct tcp_sack_block *sp, u32 seq, u32 end_seq)
> {
> if (!after(seq, sp->end_seq) && !after(sp->start_seq, end_seq)) {
> if (before(seq, sp->start_seq))
>--
- Arnaldo
-
To unsubscribe from this list: send the line "unsubscribe dwarves" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next parent reply other threads:[~2008-01-03 15:10 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.64.0801031528400.14949@kivilampi-30.cs.helsinki.fi>
[not found] ` <Pine.LNX.4.64.0801031528400.14949-Y/UOj9v5BLQhZigby9b+C6cUovnZ0M2TMR2xtNvyitY@public.gmane.org>
2008-01-03 15:10 ` Arnaldo Carvalho de Melo [this message]
[not found] ` <20080103151044.GD29523-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-03 16:45 ` codiff misses changes if inline -> not inlined? Ilpo Järvinen
[not found] ` <Pine.LNX.4.64.0801031728330.14949-Y/UOj9v5BLQhZigby9b+C6cUovnZ0M2TMR2xtNvyitY@public.gmane.org>
2008-01-03 16:56 ` Arnaldo Carvalho de Melo
[not found] ` <20080103165605.GF29523-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-03 22:41 ` Ilpo Järvinen
[not found] ` <Pine.LNX.4.64.0801040038510.20866-Y/UOj9v5BLQhZigby9b+C6cUovnZ0M2TMR2xtNvyitY@public.gmane.org>
2008-01-03 23:29 ` Arnaldo Carvalho de Melo
2008-01-03 23:30 ` Arnaldo Carvalho de Melo
[not found] ` <20080103143139.GC29523@ghostprotocols.net>
[not found] ` <20080103143139.GC29523-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-03 23:24 ` Ilpo Järvinen
[not found] ` <Pine.LNX.4.64.0801040111530.16761-Y/UOj9v5BLQhZigby9b+C6cUovnZ0M2TMR2xtNvyitY@public.gmane.org>
2008-01-03 23:35 ` Arnaldo Carvalho de Melo
2008-01-04 0:27 ` Arnaldo Carvalho de Melo
[not found] ` <20080104002746.GR29523-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>
2008-01-04 1:39 ` Arnaldo Carvalho de Melo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080103151044.GD29523@ghostprotocols.net \
--to=acme-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=dwarves-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=ilpo.jarvinen-pxSi+dnQzZMxHbG02/KK1g@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.