linux-netdev mailing list

FromSubjectsort iconDate
Stephen Hemminger
Re: What makes a good fake MAC address?
On Wed, 22 Apr 2009 15:15:05 -0700 You need a from address for the bridge to be able to populate its forwarding table. If remote end is always same, just get some random address at start of tunnel and reuse it. --
Apr 22, 3:25 pm 2009
Inaky Perez-Gonzalez
Re: What makes a good fake MAC address?
heh :) I'll give a try to just try an address from random_ether_addr(), it might work Thanks! -- Inaky --
Apr 22, 4:35 pm 2009
Mark Smith
What makes a good fake MAC address?
Hi Inaky, (please CC me, I'm not on the list) "The problem with using a zero mac address is that it confuses the bridging software (and maybe others). I was wondering, what would be a fake mac address we could put in there that is legal for this kind of "faking"? [or the closest thing to legal?]" Since you're from an organisation with an OUI allocation or two, I think a real Intel one would be best. It then wouldn't be fake, and no matter where it was exposed (host only, local network, or ...
Apr 22, 2:34 pm 2009
Inaky Perez-Gonzalez
Re: What makes a good fake MAC address?
It doesn't really work, because it is for the "from" end of the connection; as said somewhere else in the thread, the WiMAX link is P2P, IP only. The card has a local address, that we use for the "to" field, but for the from, we need to fake an address from the network -- which is not necessarily an intel device :) So maybe local addresses would not be the right choice, and clearly Intel assigned ones neither :) Thanks, -- Inaky --
Apr 22, 3:15 pm 2009
Inaky Perez-Gonzalez
Re: What makes a good fake MAC address?
Nope, the remote end will change as you move around from base station to base station :( -- Inaky --
Apr 22, 3:38 pm 2009
Stephen Hemminger
Re: What makes a good fake MAC address?
On Wed, 22 Apr 2009 15:38:10 -0700 Then don't bridge. --
Apr 22, 3:59 pm 2009
Ben Greear
ath5k irq warning message
I'm working on debugging some sort of live-lock related to irqs in ath5k with lots of virtual stations. I notice this code in the ath5k_intr method. Won't counter be -1 if you break out of this due to the 'counter-- > 0' clause? If so, then that warning won't be printed regardless... } while (ath5k_hw_is_intr_pending(ah) && counter-- > 0); if (unlikely(!counter)) ATH5K_WARN(sc, "too many interrupts, giving up for now\n"); Thanks, Ben -- Ben Greear ...
Apr 22, 2:56 pm 2009
Kumar Gala
[PATCH v2] fs_enet: Remove dead code
CONFIG_DUET doesn't exist anymore, remove all the code that exists to support it. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> --- * Removed stale comment that went along w/DUET support drivers/net/fs_enet/fs_enet-main.c | 35 +---------------------------------- drivers/net/fs_enet/fs_enet.h | 5 ----- drivers/net/fs_enet/mac-fec.c | 34 ---------------------------------- 3 files changed, 1 insertions(+), 73 deletions(-) diff --git ...
Apr 22, 2:35 pm 2009
Kumar Gala
[PATCH] fs_enet: Remove dead code
CONFIG_DUET doesn't exist anymore, remove all the code that exists to support it. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> --- drivers/net/fs_enet/fs_enet-main.c | 35 +---------------------------------- drivers/net/fs_enet/fs_enet.h | 5 ----- drivers/net/fs_enet/mac-fec.c | 30 ------------------------------ 3 files changed, 1 insertions(+), 69 deletions(-) diff --git a/drivers/net/fs_enet/fs_enet-main.c b/drivers/net/fs_enet/fs_enet-main.c index ...
Apr 22, 2:19 pm 2009
Scott Wood
Re: [PATCH] fs_enet: Remove dead code
Please remove the comment that goes with the code being removed. Otherwise, ACK. -Scott --
Apr 22, 2:30 pm 2009
Eric Dumazet
Re: What makes a good fake MAC address?
We have random_ether_addr(), it should be self explained :) /** * random_ether_addr - Generate software assigned random Ethernet address * @addr: Pointer to a six-byte array containing the Ethernet address * * Generate a random Ethernet address (MAC) that is not multicast * and has the local assigned bit set. */ static inline void random_ether_addr(u8 *addr) { get_random_bytes (addr, ETH_ALEN); addr [0] &= 0xfe; /* clear multicast bit */ addr [0] |= ...
Apr 22, 2:13 pm 2009
Stephen Hemminger
Re: What makes a good fake MAC address?
On Wed, 22 Apr 2009 13:48:27 -0700 You want really want hw to have real mac, but if not use random_ether_addr() --
Apr 22, 2:13 pm 2009
Inaky Perez-Gonzalez
Re: What makes a good fake MAC address?
(Also in reply to Stephen's comment) the device has its own local address; what we are faking is the address the packet comes from. According to random_ether_addr(), it sets the local bits; will this work to fake the "other end of the connection"? (for which there is an IP address but no MAC address, it being a pure IP link). Thanks, -- Inaky --
Apr 22, 2:28 pm 2009
Inaky Perez-Gonzalez
What makes a good fake MAC address?
Hi All The Intel i2400m WiMAX driver behaves as an ethernet device, and currently when sending packets to the netdev stack, it fakes an ethernet header, sets the "from" mac address to zeroes and the "to" to it's own MAC address. The WiMAX network can be considered to be a point-to-point (up to the gateway) connection, all IP based, so there are not MAC addresses from our gateway (not to mention that it can change behind us). The problem with using a zero mac address is that it ...
Apr 22, 1:48 pm 2009
Christoph Lameter
Re: udp ping pong measurements from 2.6.22 to .30 with v ...
Hmmm.... It does not since it depends on the way that the machine is Latencies have priority here. Multi-flows are secondary. So I guess this means that you are okay with the network stacks latency creep? Even if its only 1.5usec: In practice you tune the NIC to perform much better and this is a latency increase likely occurring in every packet transmission. --
Apr 22, 2:09 pm 2009
Christoph Lameter
udp ping pong measurements from 2.6.22 to .30 with vario ...
Here are the results of udp ping pong tests. Tests were done with between two machines. The first box was running a 2.6.22 kernel with the nic IRQ and udpping pinned to processor 4. The second box ran the various kernel versions. NIC irq pinned to cpu 4. Then the pinning of udpping (see gentwo.org/ll) was varied 1. Pinned to the same processor (cpu4) 2. Pinned to a processor that shares the L2 cache (cpu5) 3. Pinned to a processor not sharing L2 (cpu6) Results follow (a nice diagram is ...
Apr 22, 1:16 pm 2009
Eric Dumazet
Re: udp ping pong measurements from 2.6.22 to .30 with v ...
Here on my dev machine, cpu0, cpu2, cpu4, cpu6 are on physical CPU 0 and cpu1, cpu3, cpu5, cpu7 on physical CPU 1 egrep "processor|core id|physical" /proc/cpuinfo processor : 0 physical id : 0 core id : 0 processor : 1 physical id : 1 core id : 0 processor : 2 physical id : 0 core id : 2 processor : 3 physical id : 1 core id : 2 processor : 4 physical id : 0 core id : 1 processor ...
Apr 22, 2:02 pm 2009
Thadeu Lima de Souza ...
e100 shutdown breaks e100 probing when using kexec
Hello, folks. As seen recently, I've sent a bugfix for the e100 shutdown in the same lines as the patches proposed by RWJ to e1000, e1000e and some other network devices. I would like to get some light about the need to disable wake when suspending if there is no WOL support, if most, if not all, resume and probe code already do it. If it is really needed, perhaps, an utility helper function could be written and most drivers migrated to it. But another issue is that, in some particular ...
Apr 22, 11:32 am 2009
Rafael J. Wysocki
Re: e100 shutdown breaks e100 probing when using kexec
If I understand the problem correctly, e100 sometimes doesn't proble successfully after kexec if it was put into D3 before. If that's really the case, I don't think it's related to wake-up at all. The very same issue has been obseverd for some other devices and I don't think we know the root cause of it. Still, the solution seems to be not to put devices into D3 on shutdown This may be unrelated to the probing of PCI devices or at least not directly related to it. There may be something ...
Apr 22, 12:55 pm 2009
Karsten Keil
[PATCH 0/3] [ISDN] Documentation patchset
Add some useful documentation for the ISDN subsystem. Orignal patches are from Tilman Schmidt. I fixed some whitespace issues and added the URL for the CAPI 2.0 spec. Karsten Keil (1): Add reference to CAPI 2.0 standard Tilman Schmidt (2): update Documentation/isdn/00-INDEX Documentation/isdn/INTERFACE.CAPI Documentation/isdn/00-INDEX | 17 +++- Documentation/isdn/INTERFACE.CAPI | 208 +++++++++++++++++++++++++++++++++++++ drivers/isdn/capi/kcapi.c | 171 ...
Apr 22, 7:31 am 2009
Tilman Schmidt
[PATCH 1/3] update Documentation/isdn/00-INDEX
Date: Tue, 7 Apr 2009 17:51:32 +0200 After the merging of mISDN, state which files refer only to the old isdn4linux subsystem. Also add a few missing files. Signed-off-by: Tilman Schmidt <tilman@imap.cc> Signed-off-by: Karsten Keil <keil@b1-systems.de> --- Documentation/isdn/00-INDEX | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Documentation/isdn/00-INDEX b/Documentation/isdn/00-INDEX index 9fee5f2..d9660ee 100644 --- ...
Apr 22, 7:31 am 2009
Tilman Schmidt
[PATCH 2/3] Documentation/isdn/INTERFACE.CAPI
Date: Tue, 21 Apr 2009 11:18:52 +0200 isdn: document Kernel CAPI driver interface Create a file Documentation/isdn/INTERFACE.CAPI describing the interface between the kernel CAPI subsystem and ISDN device drivers, analogous to the existing Documentation/isdn/INTERFACE for the old isdn4linux subsystem. Also add kerneldoc comments to the exported functions in drivers/isdn/capi/kcapi.c. Impact: Documentation Signed-off-by: Tilman Schmidt <tilman@imap.cc> Signed-off-by: Karsten Keil ...
Apr 22, 7:31 am 2009
Karsten Keil
[PATCH 3/3] Add reference to CAPI 2.0 standard
Move the entry about CAPI 2.0 to the beginning and add a URL. Incorporate changes suggested by Randy Dunlap, thanks for proofreading. Signed-off-by: Karsten Keil <keil@b1-systems.de> --- Documentation/isdn/INTERFACE.CAPI | 20 +++++++++++++------- 1 files changed, 13 insertions(+), 7 deletions(-) diff --git a/Documentation/isdn/INTERFACE.CAPI b/Documentation/isdn/INTERFACE.CAPI index 8947ffc..4d802ee 100644 --- a/Documentation/isdn/INTERFACE.CAPI +++ ...
Apr 22, 7:31 am 2009
Andreas Mohr
Re: [BUILD FAILURE 02/12] Next April 21 : PPC64 randconf ...
Hi, But NI65 is properly guarded against ISA bus non-support already: config NI65 tristate "NI6510 support" depends on NET_VENDOR_RACAL && ISA && ISA_DMA_API help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from <http://www.tldp.org/docs.html#howto>. To compile this driver as a module, choose M here. The module will be called ni65. And powerpc _does_ offer ISA ...
Apr 22, 10:20 am 2009
Subrata Modak Apr 22, 9:15 am 2009
Y. D.
IMQ bug: kernel reboot immediately
Hi, Is IMQ still maintained? I am using IMQ to shape ingress traffic. But the application is a streaming server (VLC). However, the kernel reboots immediately as quick as can hardly been seen what is wrong with it. Any help with this kinda problem? Thanks, Shawn -------------- Y. D. 2009-04-22 --
Apr 22, 8:27 am 2009
Magnus Damm
[PATCH] smsc911x: add fifo byteswap support
From: Magnus Damm <damm@igel.co.jp> This patch adds fifo byteswap support to the smsc911x driver. The smsc911x hardware supports both big and little and endian hardware configurations, and the linux smsc911x driver currently detects word order. For correct operation on big endian platforms lacking swapped byte lanes the following patch is needed. Only fifo data is swapped, register data does not require any swapping. Signed-off-by: Magnus Damm <damm@igel.co.jp> --- Platform data ...
Apr 22, 7:55 am 2009
Steve.Glendinning
Re: [PATCH] smsc911x: add fifo byteswap support
I guess this is to work around a problem with hardware that's already in production? The best solution would be to swap the byte lanes in hardware, as the device's endian swapping features only affect registers (not the FIFOs). The very latest devices in this family (such as the LAN9221) can swap both independently, but this driver has to also support older parts. Performance will be suboptimal with this software byteswapping, so I think we should also add a comment to stress that this ...
Apr 22, 8:21 am 2009
Eilon Greenstein
[PATCH 4/4] bnx2x: driver version 1.48.105-1
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> --- drivers/net/bnx2x_main.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/bnx2x_main.c b/drivers/net/bnx2x_main.c index 0ed1ced..d976dd4 100644 --- a/drivers/net/bnx2x_main.c +++ b/drivers/net/bnx2x_main.c @@ -56,8 +56,8 @@ #include "bnx2x_init_ops.h" #include "bnx2x_dump.h" -#define DRV_MODULE_VERSION "1.48.105" -#define ...
Apr 22, 6:40 am 2009
Eilon Greenstein
[PATCH 2/4] bnx2x: Separated FW from the source.
>From now on FW will be downloaded from the binary file using request_firmware. There will be different files for every supported chip. Currently 57710 (e1) and 57711 (e1h). File names have the following format: bnx2x-<chip version>-<FW version>.fw. ihex versions of current FW files are submitted in the next patch. Each binary file has a header in the following format: struct bnx2x_fw_file_section { __be32 len; __be32 offset; } struct bnx2x_fw_file_hdr { struct ...
Apr 22, 6:40 am 2009
Eilon Greenstein
[PATCH 0/4] bnx2x: Use request_firmware()
Hi, This patch is based on the original idea of John Wright <john.wright@hp.com>. It separates FW blob from the sources. Driver will use request_firmware interface instead. It includes 4 patches: 1 - inserting the ihex FW (too big for the mailing list, but not intersting) 2 - the actual patch 3 - removing the old FW BLOB (also too big - but just removal) 4 - version update The patches were made by Vlad - Thanks Vlad! Dave - please consider applying for ...
Apr 22, 6:38 am 2009
©
**JACKPOT**JOY WINNER**
You have won £750,000 GBP. contact with your name, age, country and address to, Dr Joseph Patrick Email agenttoffices@gmail.com --
Apr 22, 5:19 am 2009
Ursula Braun
Re: [patch 0/8] iucv / af_iucv patches for net-next-2.6.30-rc1
Dave, the af_iucv-patches sent today apply to net-next-2.6 without pulling yesterday's patches for net-2.6. If you prefer to pull net-2.6 first (in order to avoid potential future merge conflicts), I can rebuild and resend today's net-next-2.6 patches based on yesterday's af_iucv patches for net-2.6. Regards, Ursula Braun --
Apr 22, 4:39 am 2009
David Miller
[GIT]: Networking
1) The usual assortment of several small wired driver fixes. CXGB3 link fault, workqueue lockup, MSI-X leak, EEH fixes from Divy Le Ray MACB retry limit and interrupt status loss fixes from Eric Waling UCC_GETH RMII PHY mode fix from Heiko Schocher TG3 final fix for the endian-corrupted MAC issue from Matt Carlson. IXGBE chip settings fix for 82599 from P. J. Waskiewicz. "(!x & y)" --> "(!(x & y))" fix in IXGBE from Tony Breeds TX queue restart fix in e1000e from Jesse ...
Apr 22, 3:48 am 2009
Sachin Sant
April 22 Next : net/rfkill randconfig failure
Today's next tree build (x86 randconfig) failed with net/rfkill/rfkill.c: In function 'update_rfkill_state': net/rfkill/rfkill.c:99: error: implicit declaration of function 'rfkill_led_trigger' make[2]: *** [net/rfkill/rfkill.o] Error 1 .config attached Thanks -Sachin -- --------------------------------- Sachin Sant IBM Linux Technology Center India Systems and Technology Labs Bangalore, India ---------------------------------
Apr 22, 3:38 am 2009
Ursula Braun
[patch 6/8] [PATCH] af_iucv: Provide new socket type SOC ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> This patch provides the socket type SOCK_SEQPACKET in addition to SOCK_STREAM. AF_IUCV sockets of type SOCK_SEQPACKET supports an 1:1 mapping of socket read or write operations to complete IUCV messages. Socket data or IUCV message data is not fragmented as this is the case for SOCK_STREAM sockets. The intention is to help application developers who write applications or device drivers using native IUCV interfaces (Linux kernel or ...
Apr 22, 2:26 am 2009
David Miller
Re: [patch 0/8] iucv / af_iucv patches for net-next-2.6.30-rc1
From: Ursula Braun <ursula.braun@de.ibm.com> Do I need to pull net-2.6 into net-next-2.6 for this stuff to apply properly? Just checking. --
Apr 22, 2:48 am 2009
Ursula Braun
[patch 0/8] iucv / af_iucv patches for net-next-2.6.30-rc1
Dave, thanks for applying our critical af_iucv bug fixes to net-2.6. Here is now the series of iucv / af_iucv patches for the current development cycle. The patches are based on top of the current net-next-2.6 kernel (2.6.30-rc1). Hendrik Brueckner (7) af_iucv: sync sk shutdown flag if iucv path is quiesced af_iucv: add sockopt() to enable/disable use of IPRM_DATA msgs af_iucv: Support data in IUCV msg parameter lists (IPRMDATA) af_iucv: Modify iucv msg target class using ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 4/8] [PATCH] af_iucv: Support data in IUCV msg pa ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> The patch allows to send and receive data in the parameter list of an iucv message. The parameter list is an arry of 8 bytes that are used by af_iucv as follows: 0..6 7 bytes for socket data and 7 1 byte to store the data length. Instead of storing the data length directly, the difference between 0xFF and the data length is used. This convention does not interfere with the existing use of PRM messages for shutting down the send ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 3/8] [PATCH] af_iucv: add sockopt() to enable/dis ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Provide the socket operations getsocktopt() and setsockopt() to enable/disable sending of data in the parameter list of IUCV messages. The patch sets respective flag only. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Ursula Braun <ursula.braun@de.ibm.com> --- include/linux/socket.h | 1 include/net/iucv/af_iucv.h | 4 ++ net/iucv/af_iucv.c | 79 ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 5/8] [PATCH] af_iucv: Modify iucv msg target clas ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Allow 'classification' of socket data that is sent or received over an af_iucv socket. For classification of data, the target class of an (native) iucv message is used. This patch provides the cmsg interface for iucv_sock_recvmsg() and iucv_sock_sendmsg(). Applications can use the msg_control field of struct msghdr to set or get the target class as a "socket control message" (SCM/CMSG). Signed-off-by: Hendrik Brueckner ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 8/8] [PATCH] af_iucv: New socket option for setti ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> The SO_MSGLIMIT socket option modifies the message limit for new IUCV communication paths. The message limit specifies the maximum number of outstanding messages that are allowed for connections. This setting can be lowered by z/VM when an IUCV connection is established. Expects an integer value in the range of 1 to 65535. The default value is 65535. The message limit must be set before calling connect() or listen() for ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 7/8] [PATCH] af_iucv: cleanup and refactor recvms ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> If the skb cannot be copied to user iovec, always return -EFAULT. The skb is enqueued again, except MSG_PEEK flag is set, to allow user space applications to correct its iovec pointer. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Ursula Braun <ursula.braun@de.ibm.com> --- net/iucv/af_iucv.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) Index: ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 1/8] [PATCH] iucv: provide second per-cpu IUCV co ...
From: Ursula Braun <ursula.braun@de.ibm.com> Some of the IUCV commands can be invoked in interrupt context. Those commands need a different per-cpu IUCV command parameter block, otherwise they might overwrite an IUCV command parameter of a not yet finished IUCV command invocation in process context. Signed-off-by: Ursula Braun <ursula.braun@de.ibm.com> --- net/iucv/iucv.c | 41 +++++++++++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 10 deletions(-) diff -urpN ...
Apr 22, 2:26 am 2009
Ursula Braun
[patch 2/8] [PATCH] af_iucv: sync sk shutdown flag if iu ...
From: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> If the af_iucv communication partner quiesces the path to shutdown its receive direction, provide a quiesce callback implementation to shutdown the (local) send direction. This ensures that both sides are synchronized. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Ursula Braun <ursula.braun@de.ibm.com> --- net/iucv/af_iucv.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 ...
Apr 22, 2:26 am 2009
Gilles Chanteperdrix
Re: [PATCH 1/2] Add an alternative cs89x0 driver
The 2d3d.co.za domain does not seem to exist. -- Gilles. --
Apr 22, 2:42 am 2009
Sascha Hauer
[PATCH 2/2] mx1ads: Add cs89x0 network support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> --- arch/arm/mach-mx1/mx1ads.c | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-mx1/mx1ads.c b/arch/arm/mach-mx1/mx1ads.c index e54057f..6d23fcc 100644 --- a/arch/arm/mach-mx1/mx1ads.c +++ b/arch/arm/mach-mx1/mx1ads.c @@ -155,6 +155,24 @@ static struct i2c_board_info mx1ads_i2c_devices[] = { }, }; +static struct resource cs89x0_resources[] = { + { + .start = IMX_CS4_PHYS ...
Apr 22, 12:59 am 2009
Sascha Hauer
[PATCH] Add new cs89x0 driver
While this is a very old chip it is still in use on some embedded boards. I see myself unable to fix the in Kernel driver to bring it to driver model support, so this patch adds a new driver designed to replace the old one, at least for non-ISA hardware. Sascha --
Apr 22, 12:59 am 2009
Sascha Hauer
[PATCH 1/2] Add an alternative cs89x0 driver
The in Kernel driver is far beyond its age. it still does not use driver model and its mere presence in the Kernel image prevents booting my board. The CS8900 still is in use on some embedded boards, so this patch adds an alternative driver to the tree designed to replace the old one. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> --- drivers/net/Kconfig | 12 + drivers/net/Makefile | 1 + drivers/net/cirrus-cs89x0.c | 847 ...
Apr 22, 12:59 am 2009
Ivo Clarysse
Re: [PATCH 1/2] Add an alternative cs89x0 driver
These REV_B / REV_C / REV_D defines are not used, and in fact depend This will report incorrectly for CS8900 (not CS8900A), and for CS8900A rev. F: According to the CS8900A and CS8920A datasheets, the product ID should be interpreted as: 0x0700 CS8900A rev. B 0x0800 CS8900A rev. C 0x0900 CS8900A rev. D 0x0A00 CS8900A rev. F 0x6100 CS8920 rev. B 0x6200 CS8920 rev. C 0x6300 CS8920 rev. D 0x6400 CS8920A rev. A/B 0x6500 CS8920A rev. C (I couldn't find the datasheet for the ...
Apr 22, 2:28 am 2009
Gilles Chanteperdrix Apr 22, 5:25 am 2009
Sascha Hauer
Re: [PATCH 1/2] Add an alternative cs89x0 driver
I'll set him on cc in the next round. I changed the module author nonetheless as it's better when mails regarding this driver go to me instead of Abraham (who wrote this driver in 2.4 days and probably has not much interest in it anymore) Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht ...
Apr 22, 6:05 am 2009
Lennert Buytenhek
Re: [PATCH] Add new cs89x0 driver
I had the same thought initially when I started working on mv643xx_eth, but I decided to try and beat the existing driver into shape anyway. The mv643xx_eth driver now is not too different from how I would have written it had I rewritten it from scratch, and refactoring it took about a hundred commits and probably a bunch more effort than just rewriting it would have taken, but in the end I probably _saved_ myself time by being able to (have users) bisect problems instead of having to spend ...
Apr 22, 3:53 pm 2009
Sascha Hauer
Re: [PATCH 1/2] Add an alternative cs89x0 driver
Ok, I'll just put myself as the module author and leave the credits to Abraham in the header, just removing his email address. I can't find any newer pointers to Abraham besides a facebook profile. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: ...
Apr 22, 5:20 am 2009
Sascha Hauer
Re: [PATCH 1/2] Add an alternative cs89x0 driver
Ok, will fix. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | --
Apr 22, 5:18 am 2009
David Miller
Re: [net-next-2.6 PATCH] e1000/e1000e/igb/ixgb: do not u ...
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Applied to net-next-2.6, thanks. --
Apr 22, 12:48 am 2009
Jeff Kirsher
[net-next-2.6 PATCH] e1000/e1000e/igb/ixgb: do not use n ...
From: Jesse Brandeburg <jesse.brandeburg@intel.com> It was pointed out that the Intel wired ethernet drivers do not need to wake the tx queue since netif_carrier_on/off will take care of the qdisc management in order to guarantee the correct handling of the transmit routine enable state. Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> --- drivers/net/e1000/e1000_main.c | 4 ++-- drivers/net/e1000e/netdev.c | ...
Apr 21, 9:42 pm 2009
David Miller
Re: pull request: wireless-2.6 2008-04-21
From: "John W. Linville" <linville@tuxdriver.com> Pulled, thanks John. --
Apr 21, 5:17 pm 2009
David Miller
Re: [PATCH] netlabel: Always remove the correct address ...
From: Etienne Basset <etienne.basset@numericable.fr> Applied, thanks everyone. --
Apr 22, 12:46 am 2009
Etienne Basset Apr 21, 10:55 pm 2009
David Miller
Re: [PATCH] snmp: add missing counters for RFC 4293
From: Eric Dumazet <dada1@cosmosbay.com> It is my understanding that after Mitsuru's patch, all RFC4293 values are available in one way or another. --
Apr 22, 2:08 am 2009
Eric Dumazet
Re: [PATCH] snmp: add missing counters for RFC 4293
Well, looking now at the patch again, I think you cannot add new fields without breaking existing apps. My previous review stoped at this _BH thing wihthout looking further :) Also, it seems some RFC4293 items are already handled, since commit d831666e from Mitsuru Chinen. Check net/ipv4/proc.c, line 114 /* Following RFC4293 items are displayed in /proc/net/netstat */ static const struct snmp_mib snmp4_ipextstats_list[] = { SNMP_MIB_ITEM("InNoRoutes", IPSTATS_MIB_INNOROUTES), ...
Apr 21, 10:15 pm 2009
David Miller
Re: [PATCH] snmp: add missing counters for RFC 4293
From: Eric Dumazet <dada1@cosmosbay.com> Fair enough. Neil I wait for an updated patch :-) --
Apr 22, 2:50 am 2009
Neil Horman
Re: [PATCH] snmp: add missing counters for RFC 4293
I suppose, I'm just trying to avoid collecting data for stats that the snmp Yeah, that makes sense, and I like the way it looks a bit better. I'll update the patch later this evening Thanks! --
Apr 22, 11:44 am 2009
Eric Dumazet Apr 21, 10:17 pm 2009
Eric Dumazet
Re: [PATCH] snmp: add missing counters for RFC 4293
Yes, I found it on page 7, on diagram. OutBcastPkts (1) Legend (1) is : (1) The HC counters and octet counters are also found at these points but have been left out for clarity. So apparently RFC forgot OutBcastOctets/InBcastOctets somewhere, oh well... We actually have IpExt: InNoRoutes InTruncatedPkts InMcastPkts OutMcastPkts InBcastPkts OutBcastPkts It would make sense to add : InOctets OutOctets InMcastOctets OutMcastOctets InBcastOctets OutBcastOctets Even if not ...
Apr 22, 10:39 am 2009
Neil Horman
Re: [PATCH] snmp: add missing counters for RFC 4293
Yep, you're right, thats the better spot for it, and I did miss the bcast packets. I'm not sure why people keep asking me to update snmp counters. I'm apparently very bad at it :). I'll repost soon Neil --
Apr 22, 3:53 am 2009
Eric Dumazet
Re: [PATCH] snmp: add missing counters for RFC 4293
Hmm... I read RFC4293 and it mentions (3.2.3. IP Statistics Tables) (1) The HC counters and octet counters are also found at these points but have been left out for clarity. (1) counters are : InReceives, InMcastPkts, OutMcastPkts, OutBcastPkts, OutTransmits So RFC4293 tells corresponding Octets variables should be supported : InOctets, InMcastOctets, OutMcastOctets, OutBcastOctets, OutOctets And I dont see them in /proc/net/snmp or /proc/net/netstat Mitsuru added : ...
Apr 22, 2:35 am 2009
Neil Horman
Re: [PATCH] snmp: add missing counters for RFC 4293
As promised, new patch, tested and ready to go. This variant puts all the stats at the end of the IpExt stats line in /proc/net/snmp, and at the end of /proc/net/dev_snmp6/<iface>, so it shouldn't break any readers of those files. Also, Eric, I know you mentioned the need for OutBcastOctets, and intuitively I thought it should be there as well, but looking at RFC 4293, [In|Out]BcastOctets isn't defined. I started to wonder if perhaps the RFC assumed that McastOctets was assumed to include ...
Apr 22, 9:50 am 2009
Neil Horman
Re: [PATCH] snmp: add missing counters for RFC 4293
Hey all- New patch, taking Erics commentary pointing out my prior stupidity into account :). The IP MIB (RFC 4293) defines stats for InOctets, OutOctets, InMcastOctets and OutMcastOctets: http://tools.ietf.org/html/rfc4293 But it seems we don't track those in any way that easy to separate from other protocols. This patch adds those missing counters to the stats file. Tested successfully by me Signed-off-by: Neil Horman <nhorman@tuxdriver.com> include/linux/snmp.h | 4 ++++ ...
Apr 21, 6:12 pm 2009
David Miller
Re: INET_LRO as tristate and use from modules
From: Olof Johansson <olof@lixom.net> Yes, making this a bool would be the easiest fix. By why don't we get the same problem for PHYLIB? It's also tristate and "select"'d by a whole slew of networking drivers. --
Apr 22, 2:12 am 2009
David Miller
Re: [patch 0/5] [RESEND] af_iucv patches for 2.6.30-rc1
From: Ursula Braun <ursula.braun@de.ibm.com> All applied, thanks. --
Apr 21, 11:46 pm 2009
David Miller
Re: [PATCH] [net, 83xx] ucc_geth.c: Fix upsmr setting in ...
From: Li Yang <leoli@freescale.com> Applied, thanks. --
Apr 22, 12:46 am 2009
Mathieu Desnoyers
Re: [RFC PATCH] v3 RCU implementation with fast grace periods
And while we are at it : you should probably add lockdep annotation to this new lock. I never thought I would say this, but following the discussion going on about netfilter locking, I am starting to think that the RCU approach might be more simple and elegant that the nestable per-cpu rwlock approches proposed so far. ;) Plus, there is much fewer name calling involved in the making. :) Cheers, -- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE ...
Apr 22, 8:49 am 2009
stefan novak Apr 22, 1:29 am 2009
David Miller
Re: [PATCH]8390p: Get rid of init_module/cleanup_module
From: Jiri Kosina <jkosina@suse.cz> Applied to net-next-2.6, thanks. --
Apr 22, 2:24 am 2009
Rafael J. Wysocki
Re: [PATCH v2 fixed] e100: do not go D3 in shutdown unle ...
Please add my ACK to the patch. Best, Rafael --
Apr 22, 1:55 pm 2009
Jeff Kirsher
Re: [PATCH v2 fixed] e100: do not go D3 in shutdown unle ...
On Wed, Apr 22, 2009 at 12:37 PM, Thadeu Lima de Souza Cascardo Correct, that would be overkill. If Rafael wants his Ack or Reviewed-by added, he will let us know. Once we have done some regression testing on the patch, I will add my signed-off-by before sending it to Dave. -- Cheers, Jeff --
Apr 22, 1:22 pm 2009
Thadeu Lima de Souza ...
Re: [PATCH v2 fixed] e100: do not go D3 in shutdown unle ...
Perhaps, Rafael should be mentioned in a Reviewed-by? As well as you if you did review it? I guess a Tested-by and Reported-by me is overkill, right? :-)
Apr 22, 12:37 pm 2009
Thadeu Lima de Souza ...
[PATCH v2 fixed] e100: do not go D3 in shutdown unless s ...
After experimenting with kexec with the last merges after 2.6.29, I've had some problems when probing e100. It would not read the eeprom. After some bisects, I realized this has been like that since forever (at least 2.6.18). The problem is that shutdown is doing the same thing that suspend does and puts the device in D3 state. I couldn't find a way to get the device back to a sane state in the probe function. So, based on some similar patches from Rafael J. Wysocki for e1000, e1000e and ixgbe, I ...
Apr 21, 9:38 pm 2009
Thadeu Lima de Souza ...
[PATCH v2] e100: do not go D3 in shutdown unless system ...
After experimenting with kexec with the last merges after 2.6.29, I've had some problems when probing e100. It would not read the eeprom. After some bisects, I realized this has been like that since forever (at least 2.6.18). The problem is that shutdown is doing the same thing that suspend does and puts the device in D3 state. I couldn't find a way to get the device back to a sane state in the probe function. So, based on some similar patches from Rafael J. Wysocki for e1000, e1000e and ixgbe, I ...
Apr 21, 6:38 pm 2009
Jeff Kirsher
Re: [PATCH v2 fixed] e100: do not go D3 in shutdown unle ...
On Tue, Apr 21, 2009 at 9:38 PM, Thadeu Lima de Souza Cascardo Thanks, I will add it to my queue of patches for e100. Also, just FYI, Auke is no longer a maintainer for e100/e1000/e1000e/igb/ixgb/ixgbe devices, so I have removed him from the thread. -- Cheers, Jeff --
Apr 21, 10:46 pm 2009
David Miller
Re: [PATCH 2.6.29.1 1/1] 8139too: fix HW initial flow
From: Eric Dumazet <dada1@cosmosbay.com> Applied, thanks everyone. --
Apr 22, 12:44 am 2009
Benjamin Herrenschmidt
Re: Porting the ibm_newemac driver to use phylib (and ot ...
Yup, emac and sungem predate phylib. I had a quick look at what it would take to port at least emac over, the main issue was that I want to be able to sleep (ie, take a mutex) in my mdio read/write functions, and back then, phylib wouldn't let me do that due to spinlock and timer/softirq usage. Ben. --
Apr 22, 1:21 am 2009
Radu Rendec
Re: htb parallelism on multi-core platforms
Hi Jarek, Thanks for the hints! As far as I understand, HFSC is also implemented as a queue discipline (like HTB), so I guess it suffers from the same design limitations (doesn't span across multiple CPUs). Is this assumption correct? As for htb_hysteresis I actually haven't tried it. Although it is definitely worth a try (especially if the average traffic grows), I don't think it can compensate multithreading / parallel execution. At least half of a packet processing time is consumed by ...
Apr 22, 7:02 am 2009
Jesper Dangaard Brouer
Re: htb parallelism on multi-core platforms
Its runtime adjustable, so its easy to try out. The HTB classify hash has a scalability issue in kernels below 2.6.26. Patrick McHardy fixes that up in 2.6.26. What kernel version are you using? Could you explain how you do classification? And perhaps outline where you possible scalability issue is located? If you are interested how I do scalable classification, see my presentation from Netfilter Workshop 2008: http://nfws.inl.fr/en/?p=115 Yes, htb_hysteresis basically is ...
Apr 22, 2:29 pm 2009
Herbert Xu
Re: [PATCH] myr10ge: again fix lro_gen_skb() alignment
I was sure I had tested my case with the IRQs bound (using a cxgb3), but when I tried it again today GRO was indeed slower (8G vs. 9.4G)! I fiddled with it all day and couldn't figure out why this was so. We weren't spending any more time in the GRO code than LRO, and in fact we were aggregating more packets with GRO (700k segments instead of 900k segments). GRO was also sending a lot less ACKs than LRO. It finally dawned on me that my sender had been upgraded from 2.6.18 to 2.6.30-rc1. ...
Apr 22, 3:48 am 2009
Andrew Gallatin
Re: [PATCH] myr10ge: again fix lro_gen_skb() alignment
Herbert Xu wrote: > > In the mean time, can you see if there is any disparity in the > number of aggregated segments and ACKs between GRO and LRO? > netstat -s should be sufficient to measure this (TCP segments > received and sent). I booted the sender into a kernel.org 2.6.18.2 so as to try to have results as close to yours as possible (I was running 2.6.22 on the sender before). I ran 2 sets of experiments, with different CPU bindings. First I bound the netserver and IRQ to the ...
Apr 22, 8:37 am 2009
David Miller
Re: [PATCH RFC v2] Documentation/isdn/INTERFACE.CAPI
From: Tilman Schmidt <tilman@imap.cc> There is no INTERFACE.fax entry in this file in the current tree. I wanted to apply this, but aparently your patch is against something other than Linus's tree or net-2.6 --
Apr 22, 2:31 am 2009
Karsten Keil
Re: [PATCH RFC v2] Documentation/isdn/INTERFACE.CAPI
I will send a new signed patch after review in few hours. Thanks to Tilman for this work. Karsten --
Apr 22, 3:16 am 2009
Randy Dunlap
Re: [PATCH RFC v2] Documentation/isdn/INTERFACE.CAPI
zero-terminated kernel-doc changes look good. Nice job. Thanks. ~Randy --
Apr 22, 8:35 am 2009
Tilman Schmidt
Re: [PATCH RFC v2] Documentation/isdn/INTERFACE.CAPI
It applies on top of my mis-dated patch Subject: [PATCH v2] update Documentation/isdn/00-INDEX Date: Mon, 17 Nov 2008 14:01:32 +0100 which I sent in fact on 7 Apr 2009. Somehow I thought you had already applied that. If it helps, I can re-send that one with the correct date, or alternatively merge both of these patches into one. Regards, Tilman --=20 Tilman Schmidt E-Mail: tilman@imap.cc Bonn, Germany Diese Nachricht besteht zu 100% aus wiederverwerteten ...
Apr 22, 4:48 am 2009
Sam Ravnborg
Re: [PATCH RFC v2] Documentation/isdn/INTERFACE.CAPI
Try copying Randy on the patch - he is good at reviewing documentation. Sam --
Apr 22, 4:45 am 2009
Greg Lindahl
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
I have no idea what you meant by a "hard" error. Note that I also discussed EAGAIN, which appears to happen commonly historically and today, and appears to be what the security module folks would want to have happen and you're rejecting. Do you consider that to be a hard error? I'm betting not. -- greg --
Apr 21, 11:10 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> Do me a favor. We have mechanisms by which you can queue up packets (even into userspace) to make policy decisions. You can make your decision there, and if appropriate, reinject the packet back into the kernel input processing. This is how netfilter ip_queue allows people to implement policies in userspace, and you could use it in the kernel and then need none of these ugly hooks. --
Apr 21, 10:07 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> So what does your TOMOTO stuff do if the mapping changes again and that incoming connection that became unacceptable is now acceptable? We've lost the connection, and can never get it back. These semantics don't make any sense at all, and the point at which you make your choices here is totally arbitrary. Read that carefully: the point at which you are making this drop decision is arbitrary. --
Apr 21, 9:22 pm 2009
Greg Lindahl
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
Isn't that completely different? Anyone who writes code that calls accept() quickly finds out that in the real world it fails for all kinds of reasons worth ignoring. As an example, a comment in ircd at the only accept call (circa 1998): /* ** There may be many reasons for error return, but in otherwise ** correctly working environment the probable cause is running ** out of file descriptors (EMFILE, ENFILE or others?). The ** man pages for accept don't seem to list these as ...
Apr 21, 6:52 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Greg Lindahl <greg@blekko.com> I said explicitly that hard errors are allows (out of file descriptors, memory allocation failure) Feel free to ignore what I'm saying, and I'll feel free to ignore you too. --
Apr 21, 9:23 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> We had a similar situation with read()'s on UDP sockets. When poll() says something, it has to stick. This is not discussable. If these semantics are "necessary", then what you're doing is definitely misdesigned in my opinion. --
Apr 21, 6:14 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Greg Lindahl <greg@blekko.com> EAGAIN does not happen if the application calls poll(), gets an indication that connections are available, and then immediately calls accept() on the indicated FD. It can only happen if it calls accept() multiple times after such a poll() call _OR_ it does not control multi-threaded access to the listen file descriptor. This new behavior from TOMOYO would make accept() return -EAGAIN in cases which are of no fault of the application. It is ...
Apr 21, 11:46 pm 2009
Tetsuo Handa
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
Why the connection gets lost? If two tasks' security settings are the same, the process whichever reached sock->ops->accept() first will get the connetion. If two tasks' security settings are not the same, I warned it on the patch TOMOYO will return -ECONNABORTED, which is also returned by failure of newsock->ops->getname(). If there were some application which can't handle accept() returning -ECONNABORTED error, we can simply disable this filtering (by giving such application permission to ...
Apr 22, 12:19 am 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> Fine. FWIW I do not agree with TOMOYO conceptually. But if people are generally going to let such a scheme into the kernel, I guess I have to accept these socket layer hacks :-/ --
Apr 21, 10:52 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Greg Lindahl <greg@blekko.com> It's likely a bug and should have been reported. Unexplainable behavior isn't something to ignore. --
Apr 21, 11:58 pm 2009
David Miller
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
From: Greg Lindahl <greg@blekko.com> People use poll() to avoid -EAGAIN and blocking, they expect the bits to tell them what fd's they can work on to do real work. But this whole task_struct based security is bogus from the start. If I dup a file descriptor for a listening socket, and accept() in the "wrong" task, the other task has no way to accept() that connection even if it's security settings allow it. The connection is lost forever. The realm of file descriptors overlaps that of ...
Apr 21, 11:34 pm 2009
Tetsuo Handa
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
To adhere what poll() said (i.e. "connections are ready" or "datagrams are ready"), security_socket_accept() and security_socket_recvmsg() hooks must be removed. Otherwise, LSM users cannot adhere what poll() said. However, security_socket_accept() and security_socket_recvmsg() hooks remain there. LSM users are already using semantics which may not adhere what poll() said. --
Apr 21, 6:49 pm 2009
Tetsuo Handa
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
I was suggested to use that approach in the past discussion. I want to make policy decisions based on the "task_struct" who picks up the connection/datagram. The netfilter can't predict which "task_struct" will pick up the connection/datagram. Nobody can predict it. Even security_socket_accept() and security_socket_recvmsg() can't predict it. If TOMOYO is allowed to make policy decisions based on the "task_struct" who picks up the connection/datagram, the only possible approach is to ...
Apr 21, 10:38 pm 2009
Greg Lindahl
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
My point is that EAGAIN happens already. So you can't claim that returning it in accept() breaks the interface, when it's common enough that today's user-level network code already handles it. I have no opinion about TOMOYO. There are many reasons other than EAGAIN from accept() to complain about. -- greg --
Apr 21, 11:41 pm 2009
Tetsuo Handa
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
No application is permitted to assume that accept() returns a connection if poll() says that connections are available even if there is an assumption that none of sock->ops->accept(), newsock->ops->getname(), move_addr_to_user() fails, for there is security_socket_accept() hook which can interrupt between "poll()" and "accept()". There is a possibility that LSM module's policy changes from "allow picking the connection up from the listening socket" to "deny picking the connection up from the ...
Apr 21, 5:55 pm 2009
Greg Lindahl
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
I have observed it recently and historically, and not by calling accept() repeatedly. I don't know what you mean by "immediately" since I don't think you're advocating race conditions; the other end can I am suggesting that you survey actual apps. If you find that they're all overly anal, then maybe you've learned something about EAGAIN already happening today. I assure you that the co-worker who stuck in the "ignore EAGAIN without logging it" only did so because he saw it fairly frequently. ...
Apr 21, 11:54 pm 2009
Tetsuo Handa
Re: [PATCH] LSM: Add security_socket_post_accept() and s ...
TOMOYO won't keep the connection. That's fine. TOMOYO thinks that dropping the connection/datagram is better than choking the queue/buffer by keeping the connection/datagram for future policy changes. I browsed the poll() logic for TCP/IPv4's listening socket. SYSCALL_DEFINE3(poll, struct pollfd __user *, ufds, unsigned int, nfds, long, timeout_msecs) { int do_sys_poll(struct pollfd __user *ufds, unsigned int nfds, struct timespec *end_time) { ...
Apr 21, 10:02 pm 2009
Jarek Poplawski
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
How did you find I disagree with you? There was nothing about you, neither anything technical. Actually, I forgot to mention I agree with Eric about your locking proposal. Jarek P. --
Apr 22, 4:39 am 2009
Eric Dumazet
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
Linus, I actually sent *one* buggy patch, and you already gave your feedback and NACK. Fine I even relayed this to Stephen suggesting him not calling this a recursive lock. (Note how I use 'suggesting' here) So, what do you want from me ? Should I copy 100 times : "I should not call it a recursive lock. I shall not invent new locking infra. I am a moron." "I should not call it a recursive lock. I shall not invent new locking infra. I am a moron." "I should not call it a recursive ...
Apr 22, 9:57 am 2009
Ingo Molnar
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
Btw., i didnt find Linus's reaction shocking at all, nor did i understand it as any criticism of prior (and future) good work of the people involved. I found it to be what it was: a forceful (because repeated) criticism of a bad patch. Ingo --
Apr 22, 10:48 am 2009
Ingo Molnar
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
You might disagree with me on an honest technical basis, but note that this kind of childish, knee-jerk reaction against dissenting people is what gives netdev its bad reputation. Ingo --
Apr 22, 4:26 am 2009
Jarek Poplawski
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
On 22-04-2009 10:53, Eric Dumazet wrote: Right, looks like 100% (Scandinavian?!) troll. I wonder where is the admin of this mess... Jarek P. --
Apr 22, 3:13 am 2009
Ingo Molnar
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
Again ... i dont know this code well, but you yourself describe it as "a_central_and_damn_rwlock" above. "Central and damn" locks of any type, anywhere tend to cause such trouble. Often they are mini-BKL's in the making. Here's some historic patterns: 1- First there's a convenient lock around a popular and useful piece of data and code. 2- As popularity (and reach of code) grows, and some non-trivial interaction ensues, a little bit of self-recursion is added to ...
Apr 22, 4:18 am 2009
Jarek Poplawski
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
Linus Torvalds wrote, On 04/22/2009 07:18 PM: Very funny! For newbies only: http://en.wikipedia.org/wiki/Troll_(Internet) Actually, I admit you could be the best "Ozzy" Osbourne imposter instead. Jarek P. --
Apr 22, 1:46 pm 2009
Paul E. McKenney
Re: [PATCH] netfilter: use per-cpu recursive lock (v13)
Looks good from a concurrency viewpoint! This is very good -- gets rid of problems with preemption nesting depth limitations and lockdep limitations. In addition, it gets rid of the period of time during which all packet processing might otherwise be blocked. Not a big deal on a small machine, but could be a real problem on a large one. Good, you do indeed need to prevent migration before you acquire this CPU's lock. Otherwise, you could have more than one CPU attempting to Good. ...
Apr 21, 9:17 pm 2009
Eric Dumazet
Re: [PATCH] netfilter: use per-cpu recursive lock (v13)
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Tested today on various machines and no problem so far tbench/oprofile results, 3.7236% cpu spent in ipt_do_table, and 0.84% used on read_lock/read_unlock c04a5c30 <ipt_do_table>: /* ipt_do_table total: 217134 3.7236 */ ... 349 0.0060 :c04a5ccc: call c04ce380 <_read_lock> 23914 0.4101 :c04a5cd1: mov 0xc(%edi),%eax ... :c04a5ecb: call c04ce5f0 <_read_unlock_bh> 25279 0.4335 :c04a5ed0: cmpb ...
Apr 22, 7:57 am 2009
Eric Dumazet
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
The netfilter case is real simple Ingo, (note I did not use "obvious" here ;) ) netfilter in 2.6.2[0-9] used : CPU 1 sofirq handles one packet from a NIC ipt_do_table() /* to handle INPUT table for example, or FORWARD */ read_lock_bh(&a_central_and_damn_rwlock) ... parse rules -> calling some netfilter sub-function re-entering network IP stack to send some packet (say a RST packet) ... ipt_do_table() /* to handle OUPUT table rules for example */ ...
Apr 22, 1:53 am 2009
Linus Torvalds
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
Actually, the thing is, I don't even think your original patch was even buggy. The bug crept in later. I NAK'ed it not because it was buggy, but because of the ad-hoc'ness and the naming. Really. And I actually even said so in my original rant: 'The fact that code "happens to work by mistake" (and I'm not saying that your does - but it might just because of the per-cpu'ness of it [..]' because your original patch still had the rcu_read_lock_bh(); in place before the ...
Apr 22, 10:18 am 2009
Linus Torvalds
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
You don't _understand_ do you? There is a huge difference between recursive code, and a recursive lock. The netfilter code may need to occasionally re-enter itself. Nobody ever contested _that_ part. What I have disagreed with the whole time is (a) doing local ad-hoc locking primitives without any comments what-so-ever. (b) Doing them _wrong_ in many cases (c) Calling the _lock_ a "recursive" lock. The fact that a lock works with recursion doesn't make it ...
Apr 22, 8:19 am 2009
Ingo Molnar
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
You make it quite hard to give reasonable feedback to your code :-/ First you attack me personally here, then - 30 minutes later - in the next iteration of your patch, you do: + /* wait for each other cpu to see new table */ + for_each_possible_cpu(i) + if (i != smp_processor_id()) { + xt_info_wrlock(i); + xt_info_wrunlock(i); + } ... which i have not seen in your previous patch and which looks ...
Apr 22, 1:00 am 2009
Linus Torvalds
Re: [PATCH] netfilter: use per-cpu recursive lock (v13)
Ack on the code. But the comment is _still_ crap. Please update. It's not a recursive lock, as clearly shown by the code itself. It's a per-cpu read-write lock, and only the reader is "recursive" (but that's how read-write locks with in Linux, and that has nothing to do with anything). So make the explanations match the code and the intent. Write it something like This version of x_tables (ip/ip6/arp) locking uses a per-cpu reader-writer lock lock where the readers can ...
Apr 22, 8:32 am 2009
Ingo Molnar
Re: [PATCH] netfilter: use per-cpu recursive lock (v11)
Yeah, indeed. I wasnt really concentrating on the nested case, i was concentrating on the scalability and lock nesting angle. I think the code submitted here looks rather incestous in that regard. Allowing nested locking _on the same CPU_ is asking for trouble. Use short critical sections and if there's any exclusion needed, use an Yeah, this looks IRQ-nesting safe. But i really have to ask: why does this code try so hard to allow same-CPU nesting? Nesting on the same CPU is ...
Apr 22, 12:35 am 2009
Andreas Schwab
Re: Oops in tun: bisected to Limit amount of queued pac ...
Any news on this? It is still badly broken in 2.6.30-rc3. Andreas. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." --
Apr 22, 1:34 pm 2009
Martin Josefsson
Re: [PATCH] Software receive packet steering
I've been toying with the irqbalancer idea as well. Set the number of software "queues" high and have a mapping table of queue->cpu and then let irqbalanced which has knowledge of cpu cache hirarchy etc balance the load by changing the mapping table as it sees fit. This would make it fairly fine grained so that it could work reasonably well even if you have very few but very performance demanding clients. Having "collisions" in the queues in that situation isn't very good. /Martin --
Apr 22, 7:33 am 2009
Tom Herbert
Re: [PATCH] Software receive packet steering
We are doing the pre-demux, and it works well. The additional benefit is that the hash result or the the sk itself could be cached in the skb for the upper layer protocol. One caveat though is that if the device provides a hash, ie. Toeplitz, we really want to use that in the CPU look-up to avoid the cache miss on the header. We considered using the Toeplitz hash as the inet hash, but it's incredibly expensive to do in software being about 20x slower than inet_ehashfn is best we could do. ...
Apr 22, 8:46 am 2009
David Miller
Re: [PATCH] Software receive packet steering
From: Tom Herbert <therbert@google.com> Yes, out of order packet processing is a serious issue. There are some things I've been brainstorming about. One thought I keep coming back to is the hack the block layer is using right now. It remembers which CPU a block I/O request comes in on, and it makes sure the completion runs on that cpu too. We could remember the cpu that the last socket level operation occurred upon, and use that as a target for packets. This requires a bit of ...
Apr 22, 2:21 am 2009
Jesper Dangaard Brouer
Re: [PATCH] Software receive packet steering
This is also very important for routing performance. Experiences from practical 10GbE routing tests (done by Roberts team and my self), reveals that we can only achieve (close to) 10Gbit/s routing performance when carefully making sure that the rx-queue and tx-queue runs on the same CPU. (Not doing so really kills performance). Currently I'm using some patches by Jens L
Apr 22, 1:44 pm 2009
Rick Jones
Re: [PATCH] Software receive packet steering
Does poll on the socket touch all that many cachelines, or are you thinking of it For what it is worth, at the 5000 foot description level that is exactly what HP-UX 11.X does and calls TOPS (Thread Optimized Packet Scheduling). Where the socket was last accessed is stashed away (in the socket/stream structure) and that is looked-up when the driver hands the packet up the stack. It was done that way in HP-UX 11.X because we found that simply hashing the headers (what HP-UX 10.20 called ...
Apr 22, 11:49 am 2009
Chris Friesen
Re: 2.6.29-git13: Reported regressions from 2.6.28
Yeah, given the above the app was broken. We just didn't run into any cases where the assumption caused any problems. Also, it's not so much that we were relying on the offset value for anything, so much as we were parsing the file and had made some assumptions about valid offsets for anonymous memory. Anyways, we'll fix it going forward to simply ignore the offset for anonymous memory. Chris --
Apr 22, 12:32 pm 2009
previous daytodaynext day
April 21, 2009April 22, 2009April 23, 2009