From: Rankle_ <crquan@gmail.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, trivial@kernel.org
Subject: [PATCH] merge dst_discard in & out into one, removed a duplicate function
Date: Wed, 30 May 2007 16:39:40 +0800 [thread overview]
Message-ID: <465D384C.4060006@gmail.com> (raw)
On 5/28/07, Jan Engelhardt <jengelh@linux01.gwdg.de
<mailto:jengelh@linux01.gwdg.de>> wrote:
> Uhm, just replace every invocation of dst_discard_in/_out() directly
> by dst_discard ... don't add macros for that.
merge dst_discard in & out into one, this removed a duplicate function.
Signed-off-by: Denis Cheng <crquan@gmail.com <mailto:crquan@gmail.com>>
---
Is there anybody also found this duplicate? I found this duplcate had
existed from linux-2.2 linux-2.4 to the latest kernel tree, you could
check it in the lxr site conveniently:
http://lxr.linux.no/source/net/core/dst.c?v=2.2.26
<http://lxr.linux.no/source/net/core/dst.c?v=2.2.26>
http://lxr.linux.no/source/net/core/dst.c?v=2.4.18
<http://lxr.linux.no/source/net/core/dst.c?v=2.4.18>
http://lxr.linux.no/source/net/core/dst.c
<http://lxr.linux.no/source/net/core/dst.c>
With little difference, the 2.2 and 2.4 version use two different
function name: dst_discard and dst_blackhole, but the definition of
them are the same, so they are same substantially. Additionally, the
two same function are two local(static) functions in a single file
dst.c, I don't know why there should exist two same functions. I
wonder what the consideration of this design is, because I'm just a
kernel newbie; this problem has been confusing me for many days, so if
you know why, please drop me some directions.
--- net/core/dst.c 2007-05-30 16:33:45.000000000 +0800
+++ net/core/dst.c.new 2007-05-28 18:22:36.000000000 +0800
@@ -111,13 +111,7 @@ out:
spin_unlock(&dst_lock);
}
-static int dst_discard_in(struct sk_buff *skb)
-{
- kfree_skb(skb);
- return 0;
-}
-
-static int dst_discard_out(struct sk_buff *skb)
+static int dst_discard(struct sk_buff *skb)
{
kfree_skb(skb);
return 0;
@@ -138,8 +132,7 @@ void * dst_alloc(struct dst_ops * ops)
dst->ops = ops;
dst->lastuse = jiffies;
dst->path = dst;
- dst->input = dst_discard_in;
- dst->output = dst_discard_out;
+ dst->input = dst->output = dst_discard;
#if RT_CACHE_DEBUG >= 2
atomic_inc(&dst_total);
#endif
@@ -153,8 +146,7 @@ static void ___dst_free(struct dst_entry
protocol module is unloaded.
*/
if (dst->dev == NULL || !(dst->dev->flags&IFF_UP)) {
- dst->input = dst_discard_in;
- dst->output = dst_discard_out;
+ dst->input = dst->output = dst_discard;
}
dst->obsolete = 2;
}
@@ -242,8 +234,7 @@ static inline void dst_ifdown(struct dst
return;
if (!unregister) {
- dst->input = dst_discard_in;
- dst->output = dst_discard_out;
+ dst->input = dst->output = dst_discard;
} else {
dst->dev = &loopback_dev;
dev_hold(&loopback_dev);
--
Denis Cheng
Linux Application Developer
next reply other threads:[~2007-05-30 8:40 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-30 8:39 Rankle_ [this message]
-- strict thread matches above, loose matches on Subject: below --
2007-05-29 11:17 [PATCH] merge dst_discard in & out into one, removed a duplicate function rae l
2007-05-29 11:24 ` Patrick McHardy
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=465D384C.4060006@gmail.com \
--to=crquan@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=trivial@kernel.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.