From: Jay Vosburgh <fubar@us.ibm.com>
To: "Laurent Chavey" <chavey@google.com>
Cc: netdev@vger.kernel.org, Jeff Garzik <jgarzik@pobox.com>
Subject: Re: [PATCH 2.6.21.3] bonding: Fix 802.3ad no carrier on "no partner found" instance
Date: Fri, 01 Jun 2007 13:38:57 -0700 [thread overview]
Message-ID: <23687.1180730337@death> (raw)
In-Reply-To: <97949e3e0706011316n5d90bb04kf3a2c556af3fbe9d@mail.gmail.com>
Jeff, please apply wherever seems appropriate. It is a bug fix,
but for a pretty obscure bit of standards compliance.
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
-J
Laurent Chavey <chavey@google.com> wrote:
>Remove the requirement to have at least one configured partner to
>enable the operation of links. The later is necessary to have the code
>in compliance with section 43.3.9 of IEEE 802.3,
>
>Signed-off-by: Laurent Chavey <chavey@google.com>
>--
>
>diff -ru linux-2.6.21.3/drivers/net/bonding/bond_3ad.c
>linux-2.6.21.3.new/drivers/net/bonding/bond_3ad.c
>--- linux-2.6.21.3/drivers/net/bonding/bond_3ad.c 2007-05-24
>14:22:47.000000000 -0700
>+++ linux-2.6.21.3.new/drivers/net/bonding/bond_3ad.c 2007-06-01
>12:41:57.000000000 -0700
>@@ -2303,19 +2303,17 @@
>}
>
>/*
>- * set link state for bonding master: if we have an active partnered
>+ * set link state for bonding master: if we have an active
> * aggregator, we're up, if not, we're down. Presumes that we cannot
> * have an active aggregator if there are no slaves with link up.
>+ * Code is implementing compliance with section 43.3.9 of IEEE 802.3.
> *
> * Called by bond_set_carrier(). Return zero if carrier state does not
> * change, nonzero if it does.
> */
>int bond_3ad_set_carrier(struct bonding *bond)
>{
>- struct aggregator *agg;
>-
>- agg = __get_active_agg(&(SLAVE_AD_INFO(bond->first_slave).aggregator));
>- if (agg && MAC_ADDRESS_COMPARE(&agg->partner_system, &null_mac_addr)) {
>+ if (__get_active_agg(&(SLAVE_AD_INFO(bond->first_slave).aggregator))) {
> if (!netif_carrier_ok(bond->dev)) {
> netif_carrier_on(bond->dev);
> return 1;
>@@ -2468,4 +2466,3 @@
>
> return ret;
>}
>-
>-
>To unsubscribe from this list: send the line "unsubscribe netdev" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2007-06-01 20:39 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-01 20:16 [PATCH 2.6.21.3] bonding: Fix 802.3ad no carrier on "no partner found" instance Laurent Chavey
2007-06-01 20:38 ` Jay Vosburgh [this message]
2007-06-09 22:25 ` Jeff Garzik
2007-06-14 5:11 ` [PATCH UPDATED] " Jay Vosburgh
2007-06-20 23:13 ` Jeff Garzik
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=23687.1180730337@death \
--to=fubar@us.ibm.com \
--cc=chavey@google.com \
--cc=jgarzik@pobox.com \
--cc=netdev@vger.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.