All of lore.kernel.org
 help / color / mirror / Atom feed
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


             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.