16 Feb, 2010
9 commits
-
Observed similar behavior on SPD as previouly seen on SAD flushing..
This fixes it.cheers,
jamal
commit 428b20432dc31bc2e01a94cd451cf5a2c00d2bf4
Author: Jamal Hadi Salim
Date: Thu Feb 11 05:49:38 2010 -0500xfrm: Flushing empty SPD generates false events
To see the effect make sure you have an empty SPD.
On window1 "ip xfrm mon" and on window2 issue "ip xfrm policy flush"
You get prompt back in window1 and you see the flush event on window2.
With this fix, you still get prompt on window1 but no event on window2.Signed-off-by: Jamal Hadi Salim
Signed-off-by: David S. Miller
-
To see the effect make sure you have an empty SAD.
-On window1 "ip xfrm mon"
-on window2 issue "ip xfrm state flush"
You get prompt back in window1
and you see the flush event on window2.
With this fix, you still get prompt on window1 but no
event on window2.I was tempted to return -ESRCH on window1 (which would
show "RTNETLINK answers: No such process") but didnt want
to change current behavior.cheers,
jamal
commit 5f3dd4a772326166e1bcf54acc2391df00dc7ab5
Author: Jamal Hadi Salim
Date: Thu Feb 11 04:41:36 2010 -0500xfrm: Flushing empty SAD generates false events
To see the effect make sure you have an empty SAD.
On window1 "ip xfrm mon" and on window2 issue "ip xfrm state flush"
You get prompt back in window1 and you see the flush event on window2.
With this fix, you still get prompt on window1 but no event on window2.Signed-off-by: Jamal Hadi Salim
Signed-off-by: David S. Miller
-
When no more memory can be allocated, fq_find() will return NULL and
increase the value of IPSTATS_MIB_REASMFAILS. In this case,
ipv6_frag_rcv() also increase the value of IPSTATS_MIB_REASMFAILS.So, the patch deletes redundant counter of IPSTATS_MIB_REASMFAILS in fq_find().
and deletes the unused parameter of idev.Signed-off-by: Shan Wei
Signed-off-by: David S. Miller -
The RCU usage in the original code was broken because
there are cases where we possibly sleep with rcu_read_lock
held. As a fix, change the macvtap_file_get_queue to
get a reference on the socket and the netdev instead of
taking the full rcu_read_lock.Also, change macvtap_file_get_queue failure case to
not require a subsequent macvtap_file_put_queue, as
pointed out by Ed Swierk.Signed-off-by: Arnd Bergmann
Cc: Ed Swierk
Cc: Sridhar Samudrala
Acked-by: Sridhar Samudrala
Acked-by: Ed Swierk
Signed-off-by: David S. Miller -
The driver is expected to report that the link is up
when the phy Rx signal is established and the mac
has not detected a link fault.
The code is however broken, the driver does not check the link fault
status when the phy link status changes.
The link fault status being checked within a short period of time,
it leads to link up/link down events.Signed-off-by: Divy Le Ray
Signed-off-by: David S. Miller -
The mac is expected to auto-inflate the Maximum Frame size for VLAN
tagged frames. It however does not work with jumbo frames.
Work around the bug adding 4 to the Maximum Frame for MTUs
greater than 1536.Signed-off-by: Divy Le Ray
Signed-off-by: David S. Miller -
The recent n-tuple patches added some comments to the headers
of the Flow Director functions that aren't accurate. This
cleans them up, and is a purely cosmetic patch.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
set_flags should check if the underlying device supports
n-tuple filter programming before setting the device flags
on the netdevice.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
We can allow a filter to be added successfully to the underlying
hardware, but still return an error if the cached list memory
allocation fails. This patch fixes that condition.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller
15 Feb, 2010
9 commits
-
Fix unconditional empty kerne log message every interrupt.
Kill some informational log messages that are superfluous
and anyways occur before the netdev is registered.Signed-off-by: David S. Miller
-
Commit 4cd24eaf0c6ee7f0242e34ee77ec899f255e66b5
("net: use netdev_mc_count and netdev_mc_empty when appropriate")
added this hunk to net/mac80211/iface.c:__dev_addr_unsync(&local->mc_list, &local->mc_count,
- &dev->mc_list, &dev->mc_count);
+ &dev->mc_list, dev->mc_count);which is definitely not correct, introduced a warning (reported
by Stephen Rothwell):net/mac80211/iface.c: In function 'ieee80211_stop':
net/mac80211/iface.c:416: warning: passing argument 4 of '__dev_addr_unsync' makes pointer from integer without a cast
include/linux/netdevice.h:1967: note: expected 'int *' but argument is of type 'int'and is thus reverted here.
Signed-off-by: David S. Miller
-
vhost-net only uses memory barriers to control SMP effects
(communication with userspace potentially running on a different CPU),
so it should use SMP barriers and not mandatory barriers for memory
access ordering, as suggested by Documentation/memory-barriers.txtSigned-off-by: Michael S. Tsirkin
Acked-by: Rusty Russell
Signed-off-by: David S. Miller -
Remove #define PFX
Add pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Convert printks to pr_
Convert printks without levels to pr_cont
Convert pr_ with np->dev to netdev_
Convert dev_ to netdev_
Convert niudbg to netif_printk
Convert niuinfo, niuwarn macros to netif_(priv, type, dev...
Coalesce long formats
Convert embedded function names to "%s", __func__
Always use "%s()..." when __func__ is printedSigned-off-by: Joe Perches
Signed-off-by: David S. Miller -
Based upon a patch by Oliver Hartkopp .
Signed-off-by: David S. Miller
-
The function name must be followed by a space, hypen, space, and a
short description.Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller -
Conflicts:
net/mac80211/rate.c
13 Feb, 2010
22 commits
-
This patch updates the tg3 version to 3.107.
Signed-off-by: Matt Carlson
Signed-off-by: David S. Miller -
The AC131 does not enable the forced transmit clock settings
immediately. The workaround is to read the register again to get the
setting to take effect.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
The 57765 lacks TSS support. This renders the napi assignments
incorrect in the loopback test function. This patch fixes the problem.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
The driver puts the phy into low-power mode when it releases the device.
If the device were to be reacquired, the phy needs a reset to bring it
back to full powered operation. This patch allows phylib-enabled
devices to reset the phy.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
The 5717's DMA read engine has a bug when initiating multiple DMA reads
across the PCIe bus. This patch disables the feature.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
On A0 revision of 57765 asic rev devices, the bootcode will perform some
hardware operations, after the magic signature is presented, that will
collide with setup operations performed by the driver. The best way to
avoid the contention is to have the driver delay an additional 10
milliseconds. B0 revisions of the chip will make this workaround
unnecessary.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
The previous patch changed the code so that new rx buffer submissions to
the hardware stall if a new submission would overwrite data needed by an
unserviced rx packet. On very busy 5717 and 57765 asic rev devices,
there is a corner case where the hardware will fail to assert an MSI-X
interrupt for rx traffic. If that vector's interrupt never has another
reason to assert, any rx buffers held will never be serviced. If the
buffers are never serviced and the hardware consumes all the available
rx packets for other rx rings, deadlock will result.The most reliable and least intrusive way to work around the problem is
to detect the case where new submissions would overwrite existing data
and force all rx interrupt vectors to fire.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
When operating in RSS mode, it is possible for one rx return ring to
submit enough rx buffers back to the hardware such that it inadvertently
overwrites data needed by another rx return ring. This patch addresses
the problem by looking for non-NULL skb pointers in the
rx_[std|jmb]_buffers rings that parallel the rx producer rings.Signed-off-by: Matt Carlson
Signed-off-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
RSS ring 1 is responsible for submitting new rx buffers to the
hardware on behalf of all the other RSS rx return rings. Up until now
this ring submitted its new rx buffers to the producer ring directly.
The following patch will require that this ring have a place to put
backlogged rx packets. As a consequence, it can no longer submit new
buffers to the producer ring.This patch adds code to allocate an extra shadow producer ring for this
RSS ring and adds RSS ring 1 to the list of rings needing buffer
transfers.Signed-off-by: Matt Carlson
Signed-off-by: Michael Chan
Reviewed-by: Benjamin Li
Signed-off-by: David S. Miller -
Add support to the igb driver for VF configuration mechanisms through the
PF interface.Signed-off-by: Mitch Williams
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
Add code to allow rtnetlink clients to query and set VF information through
the PF driver.
Signed-off-by: Mitch Williams
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
Add netdev ops for configuring SR-IOV VF devices through the PF driver.
Signed-off-by: Mitch Williams
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
Add SR-IOV VF management methods to IFLA_LINKINFO. This allows userspace to
use rtnetlink to configure VF network devices.Signed-off-by: Mitch Williams
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
Add and export pci_num_vf to allow other subsystems to determine how many
virtual function devices are associated with an SR-IOV physical function
device.
Add macros dev_is_pci, dev_is_ps, and dev_num_vf to make it easier for
non-PCI specific code to determine SR-IOV capabilities.Signed-off-by: Mitch Williams
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller -
The variable 'copied' is used in udp_recvmsg() to emphasize that the passed
'len' is adjusted to fit the actual datagram length. But the same can be
done by adjusting 'len' directly. This patch thus removes the indirection.Signed-off-by: Gerrit Renker
Signed-off-by: David S. Miller -
DCCP is datagram-oriented but lacks UDP's support for MSG_TRUNC as defined in
recvmsg(2)/recv(2). Hence the following 'Hello world\0' receiverlen = recv(fd, buf, 10, MSG_PEEK | MSG_TRUNC);
wrongly (always) returns 10, while in UDP it returns 12 as expected.
This patch adds the missing MSG_TRUNC support to recvmsg().Signed-off-by: Gerrit Renker
Signed-off-by: David S. Miller -
Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Rewrite sky2_reset to work with interrupts disabled and
avoid freeing and reallocing memory.The old code used sky2_down and sky2_up to implement sky2_reset,
which meant interrupts could not be disabled, and the transmit and
receive ring buffers would be free'd and reallocated.To avoid the interrupt handler waking the transmit queue while
we're doing a reset, it's better to have interrupts and NAPI
polls disabled.Note: Modified Mike's patch to do IRQ disable in sky2_down before
calling sky2_hw_down - StephenSigned-off-by: Mike McCormack
Acked-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Create a sky2_hw_down that brings the hardware down.
Signed-off-by: Mike McCormack
Acked-by: Stephen Hemminber
Signed-off-by: David S. Miller -
Move hardware initialization into sky2_hw_up.
Signed-off-by: Mike McCormack
Acked-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Allocate everything in one place so there's a single point
of failure in sky2_up, and sky2_rx_start can no longer fail.Don't leave the hardware in a partially initialized state in the
case rx ring allocation fails.As with the old code, the rx ring still needs to be fully
allocated for sky2_up to succeed.Signed-off-by: Mike McCormack
Acked-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Move code to calculate receive threshold and packet size out of
sky2_rx_start() so that is can be called from elsewhere easily.Signed-off-by: Mike McCormack
Acked-by: Stephen Hemminger
Signed-off-by: David S. Miller