Julian Anastasov | 1 Jun 01:18 2007
Picon

Re: [IPV4] LVS: Allow to send ICMP unreachable responses when real-servers are removed


	Hello,

On Thu, 31 May 2007, KOVACS Krisztian wrote:

>   So what about this one?

	May be we can try with better coding style. Also, this version
adds undefined behavior for using FLOWI_FLAG_ANYSRC with multicast
oldflp->fl4_dst

> Loosen source address check on IPv4 output
> 
> From: KOVACS Krisztian <hidden <at> balabit.hu>
> 
> ip_route_output() contains a check to make sure that no flows with
> non-local source IP addresses are routed. This obviously makes using
> such addresses impossible.
> 
> This patch introduces a flowi flag which makes omitting this check
> possible. The new flag provides a way of handling transparent and
> non-transparent connections differently.
> 
> Signed-off-by: KOVACS Krisztian <hidden <at> balabit.hu>
> ---
> 
>  include/net/flow.h |    1 +
>  net/ipv4/route.c   |   47 +++++++++++++++++++++++++----------------------
>  2 files changed, 26 insertions(+), 22 deletions(-)
> 
(Continue reading)

David Miller | 1 Jun 01:26 2007
Picon

Re: [PATCH] improved locking performance in rt_run_flush()

From: Herbert Xu <herbert <at> gondor.apana.org.au>
Date: Sun, 20 May 2007 15:11:48 +1000

> David Miller <davem <at> davemloft.net> wrote:
> > From: Dave Johnson <djohnson+linux-kernel <at> sw.starentnetworks.com>
> >> 
> >> The below patch changes rt_run_flush() to only take each spinlock
> >> protecting the rt_hash_table once instead of taking a spinlock for
> >> every hash table bucket (and ending up taking the same small set 
> >> of locks over and over).
> 
> ...
> 
> > I'm not ignoring it I'm just trying to brainstorm whether there
> > is a better way to resolve this inefficiency. :-)
> 
> The main problem I see with this is having to walk and free each
> chain with the lock held.  We could avoid this if we had a pointer
> in struct rtable to chain them up for freeing later.
> 
> I just checked and struct rtable is 236 bytes long on 32-bit but
> the slab cache pads it to 256 bytes so we've got some free space.
> I suspect 64-bit should be similar.

SLUB I believe packs more aggressively and won't pad things out like
that.  Therefore adding a member to rtable is much less attractive.

I've been considering various alternative ways to deal with this.

For 2.6.22 and -stable's sake we could allocate an array of pointers
(Continue reading)

Herbert Xu | 1 Jun 02:34 2007
Picon
Picon

Re: REGRESSION: panic on e1000 driver

On Thu, May 31, 2007 at 06:38:28PM -0400, Doug Chapman wrote:
> 
> I get a backtrace as it probes each e1000 device and I also still get
> the unexpected interrupt message.
> 
> 
> WARNING: at drivers/net/e1000/e1000_main.c:1331 e1000_sw_init()

Thanks for testing!

Although I still don't know what caused the interrupt in your case,
it is clear that we need to be able to deal with interrupts as soon
as the handler is registered since the cause register is not affected
by e1000_irq_disable and a shared interrupt can easily be mistaken as
our own.

So Auke's solution of doing netif_poll_disable should fix this problem.

In looking at this I've found a couple of other problems:

1) Race between IRQ handler and e1000_open:

A shared/spurious interrupt can cause this:

CPU0				CPU1
e1000_open
	request_irq
				spurious/shared IRQ
				e1000_interrupt
	e1000_irq_enable
(Continue reading)

Laurent Chavey | 1 Jun 03:46 2007
Picon

bond_3ad.c: why does bond_3ad_set_carrier() check if the mac partnet mac is set.

if a host configured with 802.3ad bond mode is connected to a switch
that does not support 802.3ad,  then an aggregator is selected as the
active aggregator (first link that has carrier in the slave list).
This is perfectly fine, since it lets at least one of the link become active.
(this was the behavior prior to 2.6.18)

In 2.6.18 and above, a new check for the partner mac address was added
before an aggregator's carrier is set on. If a host is  configured as
previously
described,  then no links will become active.

is that the intended behavior ?

-----
in the scenario described here, the partner mac address is always set to NULL.
so the statement is always false.

	if (agg && MAC_ADDRESS_COMPARE(&agg->partner_system, &null_mac_addr)) {
		if (!netif_carrier_ok(bond->dev)) {
			netif_carrier_on(bond->dev);
			return 1;
		}
		return 0;
	}
----
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

(Continue reading)

Wei Yongjun | 1 Jun 05:51 2007

[PATCH] Fix bug of update IPv4 PMTU when received ICMP Fragmentation Needed message

When received ICMP Fragmentation Needed message, PATH MTU is always set 
to the 576 even if MTU in ICMP message is lager then 576. This is 
because of error condition in function ip_rt_frag_needed(), now if 
packet size of that ICMP message is less then new MTU, packet size will 
be used ,but RFC says ICMP error message return as much as we can 
without exceeding 576 bytes.

This patch has Fixed this BUG.

Signed-off-by: Wei Yongjun <yjwei <at> cn.fujitsu.com>

--- net/ipv4/route.c.orig	2007-05-25 05:22:47.000000000 +0800
+++ net/ipv4/route.c	2007-06-01 11:42:55.000000000 +0800
 <at>  <at>  -1424,7 +1424,7  <at>  <at>  unsigned short ip_rt_frag_needed(struct 
 			    !(dst_metric_locked(&rth->u.dst, RTAX_MTU))) {
 				unsigned short mtu = new_mtu;

-				if (new_mtu < 68 || new_mtu >= old_mtu) {
+				if (new_mtu < 68) {

 					/* BSD 4.2 compatibility hack :-( */
 					if (mtu == 0 &&

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

David Miller | 1 Jun 06:33 2007
Picon

Re: [PATCH] net: fix comparisons of unsigned < 0

From: Bill Nottingham <notting <at> redhat.com>
Date: Wed, 30 May 2007 03:56:13 -0400

> Recent gcc versions emit warnings when unsigned variables are compared < 0 or >= 0.
> 
> Signed-off-by: Bill Nottingham <notting <at> redhat.com>

Patch applied, thanks.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

David Miller | 1 Jun 06:38 2007
Picon

Re: [PATCH] [TCP]: Fix GSO ignorance of pkts_acked arg (cong.cntrl modules)

From: "Ilpo_Järvinen" <ilpo.jarvinen <at> helsinki.fi>
Date: Wed, 30 May 2007 12:10:06 +0300 (EEST)

> Based on feedback from Stephen, I changed the commit msg bit
> clearer, the patch remains the same.
> 
> [PATCH] [TCP]: Fix GSO ignorance of pkts_acked arg (cong.cntrl modules)
> 
> The code used to ignore GSO completely, passing either way too
> small or zero pkts_acked when GSO skb or part of it got ACKed.
> In addition, there is no need to calculate the value in the loop
> but simple arithmetics after the loop is sufficient. There is
> no need to handle SYN case specially because congestion control
> modules are not yet initialized when FLAG_SYN_ACKED is set.
> 
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen <at> helsinki.fi>

Patch applied, thanks a lot!

I'll push this one to -stable too.

Thanks again.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

David Miller | 1 Jun 06:41 2007
Picon

Re: Fix "ipOutNoRoutes" counter error for TCP and UDP

From: Wei Dong <weidong <at> cn.fujitsu.com>
Date: Thu, 31 May 2007 09:16:50 +0800

> Hi Mr. David
>   I have modified my patch according to you advice. I think -
> EHOSTUNREACH is only for "input path". In "output" path, we can just
> simply check-ENETUNREACH  (^_^), the patch is shown in the end of this mail.
> 
>  I send this patch to you several weeks ago, but you have not replied to me.
> This patch is not correctly?

Your email client is still corrupting the patch, it changes
tab characters into spaces.  This makes the patch not apply.

Please do not send the same unusable patch so many times.
Instead, I recommend to email the patch to yourself, and
you try to apply it, in the same way someone else receiving
your patch posting would.

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Herbert Xu | 1 Jun 07:13 2007
Picon
Picon

[NET] gso: Fix GSO feature mask in sk_setup_caps

Hi Dave:

[NET] gso: Fix GSO feature mask in sk_setup_caps

This isn't a bug just yet as only TCP uses sk_setup_caps for GSO.
However, if and when UDP or something else starts using it this is
likely to cause a problem if we forget to add software emulation
for it at the same time.

The problem is that right now we translate GSO emulation to the
bitmask NETIF_F_GSO_MASK, which includes every protocol, even
ones that we cannot emulate.

This patch makes it provide only the ones that we can emulate.

Signed-off-by: Herbert Xu <herbert <at> gondor.apana.org.au>

Cheers,
--

-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert <at> gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
diff --git a/net/core/sock.c b/net/core/sock.c
index 7e51d3a..c14ce01 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
 <at>  <at>  -998,7 +998,7  <at>  <at>  void sk_setup_caps(struct sock *sk, struct dst_entry *dst)
 	__sk_dst_set(sk, dst);
(Continue reading)

David Miller | 1 Jun 07:16 2007
Picon

Re: [NET] gso: Fix GSO feature mask in sk_setup_caps

From: Herbert Xu <herbert <at> gondor.apana.org.au>
Date: Fri, 1 Jun 2007 15:13:49 +1000

> [NET] gso: Fix GSO feature mask in sk_setup_caps
> 
> This isn't a bug just yet as only TCP uses sk_setup_caps for GSO.
> However, if and when UDP or something else starts using it this is
> likely to cause a problem if we forget to add software emulation
> for it at the same time.
> 
> The problem is that right now we translate GSO emulation to the
> bitmask NETIF_F_GSO_MASK, which includes every protocol, even
> ones that we cannot emulate.
> 
> This patch makes it provide only the ones that we can emulate.
> 
> Signed-off-by: Herbert Xu <herbert <at> gondor.apana.org.au>

Good catch, applied, thanks Herbert.

I don't think it's worth bothering -stable with this one,
agreed?
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Gmane