| From | Subject | Date |
|---|---|---|
| Randy Dunlap | [PATCH] sunrpc: fix rdma dependencies
The kconfig just moved from one file to another one. The problem is still there.
---
From: Randy Dunlap <randy.dunlap@oracle.com>
Fix sunrpc/rdma build dependencies.
Survives 12 build combinations of INET, IPV6, SUNRPC,
INFINIBAND, and INFINIBAND_ADDR_TRANS.
ERROR: "rdma_destroy_id" [net/sunrpc/xprtrdma/xprtrdma.ko] undefined!
ERROR: "rdma_connect" [net/sunrpc/xprtrdma/xprtrdma.ko] undefined!
ERROR: "rdma_destroy_qp" [net/sunrpc/xprtrdma/xprtrdma.ko] undefined!
ERROR: "rdma_create_id" ...
| Feb 3, 3:13 pm 2009 |
| David Miller | Re: [PATCH] sunrpc: fix rdma dependencies
From: Randy Dunlap <randy.dunlap@oracle.com>
Applied, thanks Randy.
--
| Feb 3, 4:20 pm 2009 |
| Stephen Hemminger | [PATCH 4/4] sky2: set VPD size
Read configuration register during probe and use it to size the
available VPD. Move existing code using same register slightly
earlier in probe handling.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
--- a/drivers/net/sky2.c 2009-01-26 12:48:31.399586277 -0800
+++ b/drivers/net/sky2.c 2009-01-26 12:48:34.947586089 -0800
@@ -4335,6 +4335,7 @@ static int __devinit sky2_probe(struct p
struct net_device *dev;
struct sky2_hw *hw;
int err, using_dac = 0, wol_default;
+ u32 ...
| Feb 3, 2:27 pm 2009 |
| Stephen Hemminger | [PATCH 1/4] sky2: remove unneede workaround
This workaround is not needed. It was inherited from sk98lin driver but only
applies to an early development version of the chip that is not supported
by sky2. The workaround required an unnecessary pci read which hurts performance
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
--- a/drivers/net/sky2.c 2009-01-26 17:23:25.869792360 -0800
+++ b/drivers/net/sky2.c 2009-01-27 09:43:21.770394724 -0800
@@ -2687,13 +2687,6 @@ static int sky2_poll(struct napi_struct
goto done;
...
| Feb 3, 2:27 pm 2009 |
| Stephen Hemminger | [PATCH 3/4] sky2: move VPD display into debug interface
The VPD stuff has more data and isn't generally that useful, so move
it into the existing debugfs display and use the new PCI VPD
accessor routines.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
--- a/drivers/net/sky2.c 2009-02-03 08:08:38.063805252 -0800
+++ b/drivers/net/sky2.c 2009-02-03 08:09:02.960523549 -0800
@@ -3905,6 +3905,86 @@ static const struct ethtool_ops sky2_eth
static struct dentry *sky2_debug;
+
+/*
+ * Read and parse the first part of Vital Product ...
| Feb 3, 2:27 pm 2009 |
| David Miller | Re: [PATCH 0/4] Sky2 update
From: Stephen Hemminger <shemminger@vyatta.com>
All applied, thanks Stephen.
--
| Feb 3, 4:09 pm 2009 |
| Stephen Hemminger | [PATCH 0/4] Sky2 update
Here are some updates to sky2 driver for net-next.
--
--
| Feb 3, 2:27 pm 2009 |
| Stephen Hemminger | [PATCH 2/4] sky2: handle dma mapping errors
On non-x86 platforms it is possible to run out of DMA mapping resources.
The driver was ignoring this and could cause corruptions.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
---
drivers/net/sky2.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 56 insertions(+), 8 deletions(-)
--- a/drivers/net/sky2.c 2009-02-03 08:08:14.287767868 -0800
+++ b/drivers/net/sky2.c 2009-02-03 08:08:38.063805252 -0800
@@ -1068,13 +1068,16 @@ static void ...
| Feb 3, 2:27 pm 2009 |
| David Miller | Re: pull request: wireless-next-2.6 2009-02-03
From: "John W. Linville" <linville@tuxdriver.com>
Pulled, thanks a lot John.
--
| Feb 3, 2:20 pm 2009 |
| John W. Linville | pull request: wireless-next-2.6 2009-02-03
Dave,
Here is the somewhat overdue dump of pending wireless updates intended
for 2.6.30. I apologize for not getting it to you sooner, but I kept
needing to rebase it upon fixes sent to 2.6.29. After that it was big
enough that I wanted it to see a copule of linux-next builds (which it
now has seen). And of course, all of these patches have done time in
wireless-testing as well...
Please let me know if there are problems!
Thanks,
John
---
Individual patches are available ...
| Feb 3, 1:25 pm 2009 |
| Alex Williamson | [PATCH v4 4/4] virtio_net: Add support for VLAN filterin ...
VLAN filtering allows the hypervisor to drop packets from VLANs
that we're not a part of, further reducing the number of extraneous
packets recieved. This makes use of the VLAN virtqueue command class.
The CTRL_VLAN feature bit tells us whether the backend supports VLAN
filtering.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
---
drivers/net/virtio_net.c | 31 ++++++++++++++++++++++++++++++-
include/linux/virtio_net.h | 14 ++++++++++++++
2 files changed, 44 insertions(+), ...
| Feb 3, 12:26 pm 2009 |
| Alex Williamson | [PATCH v4 1/4] virtio_net: Add a virtqueue for outbound ...
This will be used for RX mode, MAC filter table, VLAN filtering, etc...
The control transaction consists of one or more "out" sg entries and
one or more "in" sg entries. The first out entry contains a header
defining the class and command. Additional out entries may provide
data for the command. The last in entry provides a status response
back from the command.
Virtqueues typically run asynchronous, running a callback function
when there's data in the channel. We can't readily make use ...
| Feb 3, 12:25 pm 2009 |
| Alex Williamson | [PATCH v4 0/4] virtio_net: Add MAC and VLAN filtering
This series adds infrastructure for a new control virtqueue and
makes use of it to support set_rx_mode, unicast and multicast address
lists, and supporting a hypervisor based VLAN filter. The goal is to
make the virtio-net device support more of the features of a physical
NIC and allow the hypervisor to discard packets we don't want. These
patches are intended for 2.6.30.
This is the 4th and hopefully final revision, incorporating a few
more tweaks from Rusty. I've renamed ...
| Feb 3, 12:25 pm 2009 |
| Alex Williamson | [PATCH v4 2/4] virtio_net: Add a set_rx_mode interface
Make use of the RX_MODE control virtqueue class to enable the
set_rx_mode netdev interface. This allows us to selectively
enable/disable promiscuous and allmulti mode so we don't see
packets we don't want. For now, we automatically enable these
as needed if additional unicast or multicast addresses are
requested.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
---
drivers/net/virtio_net.c | 34 ...
| Feb 3, 12:26 pm 2009 |
| David Miller | Re: [PATCH v4 0/4] virtio_net: Add MAC and VLAN filtering
From: Alex Williamson <alex.williamson@hp.com>
The second patch doesn't apply to the net-next-2.6 tree.
Please regenerate these against net-next-2.6 or -next and
I'll apply them, thanks.
--
| Feb 3, 4:06 pm 2009 |
| Alex Williamson | [PATCH v4 3/4] virtio_net: Add a MAC filter table
Make use of the MAC control virtqueue class to support a MAC
filter table. The filter table is managed by the hypervisor.
We consider the table to be available if the CTRL_RX feature
bit is set. We leave it to the hypervisor to manage the table
and enable promiscuous or all-multi mode as necessary depending
on the resources available to it.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
---
drivers/net/virtio_net.c | 55 ++++++++++++++++++++++++++++++++++++++------
...
| Feb 3, 12:26 pm 2009 |
| Alex Williamson | Re: [PATCH v4 0/4] virtio_net: Add MAC and VLAN filtering
Ack, sorry. I had dropped the original first patch that allows setting
the virtio_net MAC address since Rusty already accepted it into his
patch queue. I can easily munge these to not rely on that (context-only
changes), but that'll just leave Rusty with the merge conflict. Rusty,
which way do you want these to hit the tree? Thanks,
Alex
--
Alex Williamson HP Open Source & Linux Org.
--
| Feb 3, 4:42 pm 2009 |
| Francois Romieu | Re: [PATCH] r8169: Don't update statistics counters when ...
It makes sense.
int dev_close(struct net_device *dev)
{
[...]
clear_bit(__LINK_STATE_START, &dev->state);
-> netif_running is not true anymore
[...]
if (ops->ndo_stop)
ops->ndo_stop(dev);
-> Calling rtl8169_update_counters in rtl8169_close looks like a no-op.
Aside from that, I do not understand from the description the need for
the "while (wait--)" loop.
Aside from the aside, the diff can probably be shorter if a local "counters"
variable is kept in the ethtool ...
| Feb 3, 2:46 pm 2009 |
| Ivan Vecera | [PATCH] r8169: Don't update statistics counters when int ...
Some Realtek chips (RTL8169sb/8110sb in my case) are unable to retrieve
ethtool statistics when the interface is down. The process stays in
endless loop in rtl8169_get_ethtool_stats. This is because these chips
need to have receiver enabled (CmdRxEnb bit in ChipCmd register) that is
cleared when the interface is going down. It's better to update statistics
only when the interface is up and otherwise return copy of statistics
grabbed when the interface was up (in rtl8169_close).
It is ...
| Feb 3, 9:14 am 2009 |
| Jesper Dangaard Brouer | BUG: NIU driver: strange issues with multicast "UDP: sho ...
I have this strange issues with multicast and the NIU driver (Sun
neptune Quad NIC). When receiving multicast traffic the kernel log
spams with something like this:
__ratelimit: 5071 callbacks suppressed
UDP: short packet: From 81.161.2.106:0 44063/1324 to 233.123.173.7:0
UDP: short packet: From 81.161.2.106:0 44063/1324 to 233.123.173.7:0
UDP: short packet: From 81.161.2.106:8304 27493/1324 to 233.123.173.7:24931
UDP: short packet: From 81.161.2.106:8304 27493/1324 to ...
| Feb 3, 6:38 am 2009 |
| David Miller | Re: BUG: NIU driver: strange issues with multicast "UDP: ...
From: Jesper Dangaard Brouer <jdb@comx.dk>
The UDP header length field is garbage in all of these packets.
In the first two packets here, the source and dest ports are
That could be a good clue.
Do you happen to have multicast routing enabled on this machine? If
the multicast destination is non-local and IN_DEV_FORWARD is set on
the interface, that puts the packet through ip_mr_input.
ip_mr_input() will clone the SKB if it should be delivered locally
as well as be forwarded.
If ...
| Feb 3, 4:38 pm 2009 |
| David Lefevre | Fwd: Re: Ethernet over GRE ?
Hello, here is a little discussion I had with Stephen about iproute2.
At the end, he has told me to send this to you.
Best regards,
David
----- Forwarded message from Stephen Hemminger <shemminger@vyatta.com> -----
X-Virus-Scanned: amavisd-new at tahiti.vyatta.com
Date: Thu, 22 Jan 2009 14:56:06 +1100
From: Stephen Hemminger <shemminger@vyatta.com>
To: David Lefevre <david.lefevre7@libertysurf.fr>
Subject: Re: Ethernet over GRE ?
In-Reply-To: ...
| Feb 3, 6:15 am 2009 |
| Herbert Xu | Re: Fwd: Re: Ethernet over GRE ?
Using gretap is the correct way to go. What do you mean that
you don't know how to use it as a tunnel?
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
| Feb 3, 1:47 pm 2009 |
| Breno Leitao | [PATCH 1/1 net-next] s2io: Formatting log message
S2IO driver is printing dev->name before the name being allocated, which
display eth%d instead of eth0, eth1, etc. Example:
eth%d: Enabling MSIX failed
eth%d: MSI-X requested but failed to enable
This patch just change eth%d to s2io.
Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
---
diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c
index f5c57c0..a63a496 100644
--- a/drivers/net/s2io.c
+++ b/drivers/net/s2io.c
@@ -3862,7 +3862,7 @@ static int s2io_enable_msi_x(struct ...
| Feb 3, 5:39 am 2009 |
| David Miller | Re: [PATCH 1/1 net-next] s2io: Formatting log message
From: Breno Leitao <leitao@linux.vnet.ibm.com>
Applied, thanks.
--
| Feb 3, 4:15 pm 2009 |
| David Miller | Re: [PATCH v2] hso: add new device id's
From: Filip Aben <f.aben@option.com>
Applied, thank you.
--
| Feb 3, 4:13 pm 2009 |
| Filip Aben | [PATCH v2] hso: add new device id's
This patch adds a few device ID's. It also removes an ID that was used
in an internal engineering version of a device and will never see
commercial light. Even if this ID will be 'recycled' in the future,
which is very unlikely, we don't know what kind of device will be behind
it. Therefore it's safer to remove it.
Signed-off-by: Filip Aben <f.aben@option.com>
---
| Feb 3, 3:39 am 2009 |
| David Miller | Re: net.ipv6.conf.INT.accept_ra_rt_info_max_plen defaults to 0
From: Pekka Savola <pekkas@netcore.fi>
It looks very intentional, both via the code and it's documentation
in ip-sysctl.txt
It seems that it is disabled like this by default when
accept_ra_rtr_pref is enabled, and that seems pretty reasonable to me.
I'm sure whoever made that decision didn't do so on a whim and had
a very good reason for it.
--
| Feb 2, 10:36 pm 2009 |
| Pekka Savola | net.ipv6.conf.INT.accept_ra_rt_info_max_plen defaults to 0
Hello,
As reported and discussed below and in
<http://www.mail-archive.com/debian-ipv6@lists.debian.org/msg03753.html>,
to accept "route information option" on Linux, you have to manually
change accept_ra_rt_info_max_plen sysctl value. Other implementations
that I know of accept this by default.
Is it intentional that Route Information options are ignored by
default?
I suspect not -- if so, the default value should be (IMHO) 64 or if
that's disagreeable, 48.
Even if this is ...
| Feb 2, 9:38 pm 2009 |
| Graham, David | RE: [E1000-devel] [Bugme-new] [Bug 12570] New: Bonding d ...
[Empty message]
| Feb 2, 6:42 pm 2009 |
| Greg KH | Re: [stable] [PATCH 2.6.27.y] stable request for vlan fix
Thanks, I'll queue that one up tomorrow.
greg k-h
--
| Feb 2, 8:43 pm 2009 |
| Brandeburg, Jesse | [PATCH 2.6.27.y] stable request for vlan fix
I had a customer report that e1000/e1000e was hitting a vlan bug when
compiled without NAPI support. Turns out it had been solved already
in a newer kernel. Please consider for stable.
this commit was pushed in the 2.6.28-rc4 timeframe
git-cherry-pick 9b22ea560957de1484e6b3e8538f7eef202e3596
patch inline (likely whitespace corrupted, please use git)
(offsets adjusted for 2.6.27.y kernel)
I did a cherry pick to the 2.6.27.y.git and it worked fine (compile
tested only)
Author: ...
| Feb 2, 5:53 pm 2009 |
| Ron Mercer | Re: qlge packet receive
Thanks Dave. I've changed this and also added gro to my net-next
branch. I will send up this bugfix up for 2.6.29 in a few days.
--
| Feb 3, 9:08 am 2009 |
| Russell King - ARM Linux | Re: Remaining bits for basic support of LDP
Mainline during the -rc series is not for pushing stuff to get additional
testing. It's for resolving regressions and fixing bugs, not introducing
changes which could cause regressions and bugs.
--
| Feb 3, 1:10 am 2009 |
| Russell King - ARM Linux | Re: Remaining bits for basic support of LDP
As far as I'm aware, the smc911x driver works as is on the majority of
ARM platforms. The fact that it works is enough justification to leave
well alone during the -rc series.
Changing it involves risk that something will break, which will cause
a regression. This is not a risk that we want, and we certainly don't
want any new regressions in the -rc series. The proper time to take
No, and that's the problem with splitting it across two separate trees,
which is a point I was trying to ...
| Feb 3, 5:21 am 2009 |
| Steve.Glendinning | Re: Remaining bits for basic support of LDP
Russell King - ARM Linux <linux@arm.linux.org.uk> wrote on 03/02/2009
Does it help that the smsc911x driver is new this cycle?
Without these patches the driver fails to register its interrupt on many
arm platforms, so it could be said that these patches do fix regressions
against the smc911x driver it's intended to replace.
On a related note, if these go in during the next merge window, is there a
mechanism for ensuring the platform support patches in the set are merged
after ...
| Feb 3, 4:02 am 2009 |
| Kenny Chang | Re: Multicast packet loss
Eric Dumazet wrote:
> Wes Chow a
| Feb 3, 10:34 am 2009 |
| David Miller | Re: [PATCH] dca: redesign locks
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Applied.
--
| Feb 3, 12:27 am 2009 |
| Jeff Kirsher | Re: [PATCH] dca: redesign locks
On Mon, Feb 2, 2009 at 9:14 AM, Maciej Sosnowski
Acked-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
--
Cheers,
Jeff
--
| Feb 2, 10:58 pm 2009 |
| David Miller | Re: [PATCH] hso: add new device id's
From: "Filip Aben" <F.Aben@option.com>
Great, please add that information to the commit message
and resend your patch.
Thanks.
--
| Feb 2, 5:33 pm 2009 |
| Filip Aben | RE: [PATCH] hso: add new device id's
That ID was used in an internal engineering version of a device and
will never see commercial light.
Even if this ID will be 'recycled' in the future, which is very
unlikely,
I don't know what kind of device will be behind it. Therefore it's safer
to remove it.
Regards,
Filip-
--
| Feb 2, 5:26 pm 2009 |
| David Miller | Re: Allow group ownership of TUN/TAP devices.
From: Michael Tokarev <mjt@tls.msk.ru>
Seems reasonable, applied, thanks.
--
| Feb 3, 12:35 am 2009 |
| David Miller | Re: [PATCH] connector: create connector workqueue only w ...
From: Evgeniy Polyakov <zbr@ioremap.net>
Applied.
--
| Feb 3, 12:22 am 2009 |
| Pablo Neira Ayuso | Re: [RFC] netlink broadcast return value
Hi Iñaky,
I was using Patrick's tree (nf-2.6.git) which did not contain net/wimax
yet. I'm going to re-check against David's tree and let you know.
--
"Los honestos son inadaptados sociales" -- Les Luthiers
--
| Feb 3, 3:07 am 2009 |
| Cord Walter | [PATCH] pcnet_cs:fix misuse of the equality operator.
pcnet_cs:
fix misuse of the equality operator.
Signed-off-by: Cord Walter <qord@cwalter.net>
Signed-off-by: Komuro <komurojun-mbn@nifty.com>
---
--- linux-2.6.29-rc3/drivers/net/pcmcia/pcnet_cs.c.orig 2009-01-31 06:44:03.000000000 +0900
+++ linux-2.6.29-rc3/drivers/net/pcmcia/pcnet_cs.c 2009-01-31 06:44:21.000000000 +0900
@@ -586,7 +586,7 @@ static int pcnet_config(struct pcmcia_de
}
if ((link->conf.ConfigBase == 0x03c0)
- && (link->manf_id == 0x149) && (link->card_id = ...
| Feb 3, 3:59 am 2009 |
| David Miller | Re: [PATCH] pcnet_cs:fix misuse of the equality operator.
From: Cord Walter <cord.walter@gmx.de>
Applied, thanks.
--
| Feb 3, 4:14 pm 2009 |
| David Miller | Re: [PATCH] sungem: limit reaches -1, but 0 tested
From: Roel Kluin <roel.kluin@gmail.com>
Also applied, thanks.
--
| Feb 3, 12:19 am 2009 |
| David Miller | Re: [PATCH] net: variables reach -1, but 0 tested
From: Roel Kluin <roel.kluin@gmail.com>
Applied.
--
| Feb 3, 12:18 am 2009 |
| Eric Dumazet | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
[Empty message]
| Feb 3, 12:00 pm 2009 |
| Eric Dumazet | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
Cool then, sorry for misunderstanding your patch.
--
| Feb 3, 2:05 pm 2009 |
| Stephen Hemminger | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
On Tue, 3 Feb 2009 13:10:00 -0800
--
| Feb 3, 2:22 pm 2009 |
| Stephen Hemminger | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
For large number of CPU's it would be possible to allocate
a full set of ncpu-1 new counters, then swap them in and then do one synchronize net.
Or instead of synchronize_net, maybe a "wait for CPU #n" to go through
The concept is that only the sum of all the counters matters, not
Pretty much what I said.
--
| Feb 3, 1:44 pm 2009 |
| Stephen Hemminger | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
This is the "interesting bits" of what I am testing.
What it does is swap in new counters, sum, then put counter values
back onto the current cpu.
The replace case is easier since the counters are "old" at that point.
--- a/net/ipv4/netfilter/ip_tables.c 2009-02-02 15:06:29.684249364 -0800
+++ b/net/ipv4/netfilter/ip_tables.c 2009-02-03 15:08:30.230188116 -0800
@@ -347,10 +347,12 @@ ipt_do_table(struct sk_buff *skb,
mtpar.family = tgpar.family = NFPROTO_IPV4;
tgpar.hooknum = hook;
...
| Feb 3, 4:18 pm 2009 |
| Paul E. McKenney | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
Why would this not provide the moral equivalent of atomic sampling?
The code above switches to another counter set, and waits for a grace
period. Shouldn't this mean that all CPUs that were incrementing the
old set of counters have finished doing so, so that the aggregate count
covers all CPUs that started their increments before the pointer switch?
Same as acquiring a write lock, which would wait for all CPUs that
started their increments before starting the write-lock acquisition.
CPUs that ...
| Feb 3, 12:32 pm 2009 |
| Paul E. McKenney | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
The usual approach would be to have three sets of counters, one currently
being incremented, one just removed from service, and the last one holding
the cumulative value. After a synchronize_net() following removing
a set from service, you add in the values in the previous set removed
It should be easier to maintain a third set of counters that hold the
Good point, the for_each_possible_cpu() was cut out -- I should have
gone back and looked at the original patch.
Seems like it ...
| Feb 3, 2:10 pm 2009 |
| Eric Dumazet | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
I see your point, but this is not what Stephen implemented.
So.. CPU will increments which counters, if not delayed ?
How counters will be synced again after our 'iptables -L' finished ?
"iptable -L" is not supposed to miss some counters updates (only some packets
might be droped at NIC level because we spend time in the collection).
If packets matches some rules, we really want up2date counters.
Maybe we need for this collection an extra "cpu", to collect
all increments that were ...
| Feb 3, 1:20 pm 2009 |
| Eric Dumazet | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
Hum... reading my mail, this one can be done once only, at the beginning
Why then I suggested two different seqlocks, I am wondering :)
I need to think a litle bit more, we might do something to allow several "iptables -L" in //
maybe an atomic_t to protect counters would be ok :
Ie :
One atomic_t (counters_readers) to protect counter updates
One seqlock (seqlock_rules) to protect rules changes
ipt_do_table() doing :
{
begin:
read_seqbegin(&table->seqlock_rules); // it ...
| Feb 3, 12:19 pm 2009 |
| Paul E. McKenney | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
Sounds good, then! ;-)
Thanx, Paul
--
| Feb 3, 4:11 pm 2009 |
| Rick Jones | Re: [PATCH 3/3] iptables: lock free counters (alternate ...
So, is this patch stream at a point where I should try running the 32-core
netperf tests against it? And if so, against which tree should I try applying
patches?
rick jones
--
| Feb 3, 2:27 pm 2009 |
| Kenny Chang | Re: Multicast packet loss
Yeah, these are quad core systems. The 8 cpu system is a dual-processor
quad-core. The other is my desktop, single cpu quad core.
Kenny
--
| Feb 3, 8:20 am 2009 |
| Neil Horman | Re: Multicast packet loss
Are these quad core systems? Or dual core w/ hyperthreading? I ask because in
your working setup you have 1/2 the number of cpus' and was not sure if you
removed an entire package of if you just disabled hyperthreading.
Neil
--
| Feb 3, 4:55 am 2009 |
| Rusty Russell | Re: [PATCH v3 2/4] virtio_net: Add a set_rx_mode interface
Yes, I've frequently expressed unhappiness with the API. I lost that debate
and it doesn't seem fruitful to return to it.
Ideally we would chain them, but the caller would have to allocate an extra
sg element.
I don't think so: those args should in fact be const struct scatterlist *.
Thanks,
Rusty.
--
| Feb 2, 7:54 pm 2009 |
| Rafael J. Wysocki | Re: 2.6.29-rc3: tg3 dead after resume
Good.
Can you also test this one instead and tell me if it still works?
Rafael
---
drivers/pci/pcie/portdrv_pci.c | 16 +---------------
1 file changed, 1 insertion(+), 15 deletions(-)
Index: linux-2.6/drivers/pci/pcie/portdrv_pci.c
===================================================================
--- linux-2.6.orig/drivers/pci/pcie/portdrv_pci.c
+++ linux-2.6/drivers/pci/pcie/portdrv_pci.c
@@ -55,25 +55,13 @@ static int pcie_portdrv_suspend(struct p
}
-static int ...
| Feb 3, 3:15 pm 2009 |
| Parag Warudkar | Re: 2.6.29-rc3: tg3 dead after resume
Hi Rafael,
Yes, the patch below (atop today's git) does work for me.
--
| Feb 3, 2:27 pm 2009 |
| Rafael J. Wysocki | Re: 2.6.29-rc3: tg3 dead after resume
Hi Parag,
Did you have a chance to check if the patch from Linus (reproduced
below) on top of current -git fixed the problem for you too?
Thanks,
Rafael
---
drivers/pci/pcie/portdrv_pci.c | 14 --------------
1 files changed, 0 insertions(+), 14 deletions(-)
diff --git a/drivers/pci/pcie/portdrv_pci.c b/drivers/pci/pcie/portdrv_pci.c
index 99a914a..08a8e3c 100644
--- a/drivers/pci/pcie/portdrv_pci.c
+++ b/drivers/pci/pcie/portdrv_pci.c
@@ -55,16 +55,6 @@ static int ...
| Feb 3, 2:29 am 2009 |
| Sam Ravnborg | Re: 2.6.28 headers break kbd and net-tools userspace builds
All headers are unifdeffed - so the Kbuild patch
is not needed.
Sam
--
| Feb 2, 9:58 pm 2009 |
| David Miller | Re: 2.6.28 headers break kbd and net-tools userspace builds
From: Sam Ravnborg <sam@ravnborg.org>
Thanks for the info but that's how I commited and pushed out
the fix already, and it doesn't hurt either :-)
--
| Feb 2, 10:26 pm 2009 |
| Jarek Poplawski | Re: [PATCH v2] tcp: splice as many packets as possible at once
Now it's clear. So this looks like one of the options considered by
David. Then I wonder about details... It seems some kind of scheduled
browsing for refcounts is needed or is there something better?
Jarek P.
--
| Feb 3, 6:25 am 2009 |
| David Miller | Re: [PATCH v2] tcp: splice as many packets as possible at once
From: Jarek Poplawski <jarkao2@gmail.com>
This is a very interesting idea, but it has some drawbacks:
1) Just like any other allocator we'll need to find a way to
handle > PAGE_SIZE allocations, and thus add handling for
compound pages etc.
And exactly the drivers that want such huge SKB data areas
on receive should be converted to use scatter gather page
vectors in order to avoid multi-order pages and thus strains
on the page allocator.
2) Space wastage and poor ...
| Feb 3, 12:50 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
Easy, the driver is already allocating them right now so we don't
have to change a thing :)
All we have to do is change the refill mechanism to always allocate
a replacement skb in the rx path, and if that fails, allocate a
fragmented skb instead and copy the received data into it so that
the contiguous skb can be reused.
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP ...
| Feb 3, 4:53 am 2009 |
| david | Re: [PATCH v2] tcp: splice as many packets as possible at once
1. define 'fragmented enough'
2. the packet size was already negotiated on your existing connections,
how are you going to change all those on the fly?
3. what do you do when a remote system sends you a large packet? drop it
on the floor?
having some pool of large buffers to receive into (and copy out of those
buffers as quickly as possible) would cause a performance hit when things
get bad, but isn't that better than dropping packets?
as for the number of buffers to use. make a ...
| Feb 3, 6:05 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
Reducing the MTU can create all sorts of problems so it should be
avoided if at all possible. These days, path MTU discovery is
haphazard at best. In fact MTU problems are the main reason why
Sure, if we can create an allocator that can guarantee contiguous
allocations all the time then by all means go for it. But until
we get there, doing what I suggested is way better than stopping
Yes, improving the allocator would obviously inrease the performance,
however, there is nothing against ...
| Feb 3, 5:27 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
How many such preallocated frames is enough? Does it enough to have all
sockets recv buffer sizes divided by the MTU size? Or just some of them,
Maybe just do not allow jumbo frames when memory is fragmented enough
and fallback to the smaller MTU in this case? With LRO/GRO stuff there
should be not that much of the overhead compared to multiple-page
copies.
--
Evgeniy Polyakov
--
| Feb 3, 4:49 am 2009 |
| Nick Piggin | Re: [PATCH v2] tcp: splice as many packets as possible at once
Wouldn't your caller need to know what objects are already
It is nasty, yes. Using the page allocator directly seeems
like a better approach.
And btw. be careful of using page->_count for anything, due
to speculative page references... basically it is useful only
to test zero or non-zero refcount. If designing a new scheme
for the network layer, it would be nicer to begin by using
say _mapcount or private or some other field in there for a
refcount (and I have a patch to avoid the ...
| Feb 3, 4:38 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
Comparing performance is pointless because the only time you need
to do the copy is when the allocator has failed. So there is *no*
alternative to copying, regardless of how slow it is.
You can always improve the allocator whether we do this copying
fallback or not.
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
| Feb 3, 5:33 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
I think you've misunderstood my suggested scheme.
I'm suggesting that we keep the driver initialisation path as is,
so however many skb's the driver is allocating at open() time
remains unchanged. Usually this would be the number of entries
on the ring buffer. We can't do any better than that since if
the hardware can't do SG then you'll just have to find this many
contiguous buffers.
The only change we need to make is at receive time. Instead of
always pushing the received skb into the ...
| Feb 3, 5:12 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
NTA steals pages from the SLAB so we can maintain any reference counter
logic in them, so linear part of the skb may be not really freed/reused
until reference counter hits zero.
--
Evgeniy Polyakov
--
| Feb 3, 6:06 am 2009 |
| Nick Piggin | Re: [PATCH v2] tcp: splice as many packets as possible at once
This sounds like a really nice idea (to the layman)!
--
| Feb 3, 5:33 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
Not to mention that Ethernet isn't just IP, so the protocol that
is being used might not have a concept of path MTU discovery at
all.
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
| Feb 3, 5:28 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
It depends on the implementation, for example each kfree() may check the
reference counter and return page to the allocator when it is really
free. Since page may contiain multiple objects its reference counter may
hit zero someday in the future, or never reach it if data was not freed.
--
Evgeniy Polyakov
--
| Feb 3, 7:20 am 2009 |
| Jarek Poplawski | Re: [PATCH v2] tcp: splice as many packets as possible at once
I guess compound pages are handled by put_page() enough, but I don't
think they should be main argument here, and I agree: scatter gather
I'm a bit lost here: could you "remind" the way page space would be
Yes, this looks reasonable. On the other hand, I think it would be
nice to get some opinions of slab folks (incl. Evgeniy) on the expected
efficiency of such a solution. (It seems releasing with put_page() will
always have some cost with delayed reusing and/or waste of space.)
Jarek ...
| Feb 3, 2:41 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
Problem is to allocate them, since with the time memory will be
quite fragmented, which will not allow to find a big enough page.
NTA tried to solve this by not allowing to free the data allocated on
the different CPU, contrary to what SLAB does. Modulo cache coherency
improvements, it allows to combine freed chunks back into the pages and
combine them in turn to get bigger contiguous areas suitable for the
drivers which were not converted to use the scatter gather approach.
I even believe ...
| Feb 3, 4:10 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
Not necessarily. Even if the hardware can only DMA into contiguous
memory, we can always allocate a sufficient number of contiguous
buffers initially, and then always copy them into fragmented skbs
at receive time. This way the contiguous buffers are never
depleted.
Granted copying sucks, but this is really because the underlying
hardware is badly designed. Also copying is way better than
not receiving at all due to memory fragmentation.
Cheers,
--
Visit Openswan at ...
| Feb 3, 4:24 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
How many? A hundred or so descriptors (or even several thousands) -
this really does not scale for the somewhat loaded IO servers, that's
why we frequently get questions why dmesg is filler with order-3 and
Having a 'reserve' skb per socket is a good idea, but what if numbr of
sockets is way too big?
--
Evgeniy Polyakov
--
| Feb 3, 5:07 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
It is a solution, but I think it will behave noticebly worse than
That's the main point: how to deal with broken hardware? I think (but
have no strong numbers though) that having 6 packets with 1500 MTU
combined into GRO/LRO frame will be processed way faster than copying 9k
MTU into 3 pages and process single skb.
--
Evgeniy Polyakov
--
| Feb 3, 5:12 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
I agree that this will work and will be better than nothing, but copying
9kb into 3 pages is rather CPU hungry operation, and I think (but have
no numbers though) that system will behave faster if MTU is reduced to
the standard one.
Another solution is to have a proper allocator which will be able to
defragment the data, if talking about the alternatives to the drop.
So:
1. copy the whole jumbo skb into fragmented one
2. reduce the MTU
3. rely on the allocator
For the 'good' hardware ...
| Feb 3, 5:18 am 2009 |
| Herbert Xu | Re: [PATCH v2] tcp: splice as many packets as possible at once
Not necessarily. Remember GSO/GRO in essence are just hacks to
get around the fact that we can't increase the MTU to where we
want it to be. MTU reduces the cost over the entire path while
GRO/GSO only do so for the sender and the receiver.
In other words when given the choice between a larger MTU with
copying or GRO, the larger MTU will probably win anyway as it's
Please note that with my scheme, you'd only start copying if you
can't allocate a linear skb. So if memory fragmentation ...
| Feb 3, 5:18 am 2009 |
| Willy Tarreau | Re: [PATCH v2] tcp: splice as many packets as possible at once
Well, FWIW, I've always observed better performance with 4k MTU (4080 to
be precise) than with 9K, and I think that the overhead of allocating 3
you'll not reduce MTU of established connections though. And trying to
advertise MSS changes in the middle of a TCP connection is an awful
Willy
--
| Feb 3, 5:25 am 2009 |
| Evgeniy Polyakov | Re: [PATCH v2] tcp: splice as many packets as possible at once
Well, we both do not have the data and very likely will not change the
opinions :)
But we can proceed the discussion in case something interesting will
appear. For example I can hack up e1000e driver to do a dumb copy of 9k
each time it has received a jumbo frame and compare it with usual 1.5k
MTU performance. But getting that modern CPUs are loafing with noticebly
big IO chunks, this may only show that CPU was increased with the copy.
Yes, absolutely.
--
Evgeniy Polyakov
--
| Feb 3, 5:30 am 2009 |
| Jarek Poplawski | Re: [PATCH v2] tcp: splice as many packets as possible at once
Yes, it's a problem, but I don't think the main one. Since we're
currently concerned with zero-copy for splice I think we could
concentrate on most common cases, and treat jumbo frames with best
effort only: if there are free compound pages - fine, otherwise we
I understand NTA could be better than slabs in above-mentioned cases,
but I'm not sure you explaind enough your point on solving this
zero-copy problem vs. NTA?
Jarek P.
--
| Feb 3, 5:36 am 2009 |
| previous day | today | next day |
|---|---|---|
| February 2, 2009 | February 3, 2009 | February 4, 2009 |
