18 Jun, 2009
22 commits
-
commit 2b85a34e911bf483c27cfdd124aeb1605145dc80
(net: No more expensive sock_hold()/sock_put() on each tx)
changed initial sk_wmem_alloc value.We need to take into account this offset when reporting
sk_wmem_alloc to user, in PROC_FS files or various
ioctls (SIOCOUTQ/TIOCOUTQ)Signed-off-by: Eric Dumazet
Signed-off-by: David S. Miller -
on boot, link is always up.
Signed-off-by: Seguier Regis
Signed-off-by: David S. Miller -
If the adapter is not power-manageable using either ACPI, or the
native PCI PM interface, __e100_power_off() returns error code, which
causes every attempt to suspend to fail, although it should return 0
in such a case. Fix this problem by ignoring the return value of
pci_set_power_state() in __e100_power_off().Signed-off-by: Rafael J. Wysocki
Acked-by: Andreas Mohr
Signed-off-by: David S. Miller -
clk_disable was called twice in the remove function.
Correct this so that the driver module unloads without error.Signed-off-by: Chaithrika U S
Signed-off-by: David S. Miller -
This patch is inspired by patch recently posted by Johannes Berg. Basically what
my patch does is to group list and a count of addresses into newly introduced
structure netdev_hw_addr_list. This brings us two benefits:
1) struct net_device becames a bit nicer.
2) in the future there will be a possibility to operate with lists independently
on netdevices (with exporting right functions).
I wanted to introduce this patch before I'll post a multicast lists conversion.Signed-off-by: Jiri Pirko
drivers/net/bnx2.c | 4 +-
drivers/net/e1000/e1000_main.c | 4 +-
drivers/net/ixgbe/ixgbe_main.c | 6 +-
drivers/net/mv643xx_eth.c | 2 +-
drivers/net/niu.c | 4 +-
drivers/net/virtio_net.c | 10 ++--
drivers/s390/net/qeth_l2_main.c | 2 +-
include/linux/netdevice.h | 17 +++--
net/core/dev.c | 130 ++++++++++++++++++--------------------
9 files changed, 89 insertions(+), 90 deletions(-)
Signed-off-by: David S. Miller -
My previous patch, which explicitly delays freeing of tnodes by adding
them to the list to flush them after the update is finished, isn't
strict enough. It treats exceptionally tnodes without parent, assuming
they are newly created, so "invisible" for the read side yet.But the top tnode doesn't have parent as well, so we have to exclude
all exceptions (at least until a better way is found). Additionally we
need to move rcu assignment of this node before flushing, so the
return type of the trie_rebalance() function is changed.Reported-by: Yan Zheng
Signed-off-by: Jarek Poplawski
Signed-off-by: David S. Miller -
Action police statistics could be misleading because drops are not
shown when expected.With feedback from: Jamal Hadi Salim
Reported-by: Pawel Staszewski
Signed-off-by: Jarek Poplawski
Acked-by: Jamal Hadi Salim
Signed-off-by: David S. Miller -
Version bump.
Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Add support for generic receive offload.
Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
This patch implements skb recycling. It reclaims transmitted skb's
for use in the receive ring.Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Reduce the size of the driver transmit ring to reduce latency
and allow qdisc to do better rate control. Also make it
obvious what the minimum transmit ring allowed is and why.Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Since it is likely that there are multiple packets received per
interrupt, only update the receive counters once after all
packets are processed.Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
The logic in sky2_down was incorrect. Receiver could report status
after rx_stop was called.The steps need to be:
* stop new frames from being transmitted
* shut off transmit/receive logic
* synchronize with NAPI to process status info about transmitter
and receiverSigned-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Add some read's to avoid any PCI posting issues when controlling
irq's.Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Reset more parts of the receive path when device is take offline.
Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
This unblocks the chip if it is stuck in pause cycle during
shutdown.Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Stopping all activity through ChipCmd and blindly acking the irqs
is neither nice nor completely needed: the transition to low-power
mode does enough work and it apparently keeps the device in a sane
state.Patch suggested by a fix for http://bugzilla.kernel.org/show_bug.cgi?id=9512
The rtl_shutdown path is kept unchanged so far.
Signed-off-by: Francois Romieu
Tested-by: Anders Eriksson
Cc: Edward Hsu
Signed-off-by: David S. Miller -
When sis190 driver is trying to get default phy, if it doesn't find home
or lan phy, it falls back to the first phy in the phy list but list_entry()
points to a bogus entry. list_first_entry() should be used instead.Signed-off-by: Arnaud Patard
Acked-off-by: Francois Romieu
Signed-off-by: David S. Miller -
-- derived from reverted commit 047584ce94108012288554a5f84585d792cc7f8f
-- reworked by Grant Likely to play nice with commit:
"net: Rework ucc_geth driver to use of_mdio infrastructure"
(0b9da337dca972e7a4144e298ec3adb8f244d4a4)Signed-off-by: Haiying Wang
Signed-off-by: David S. Miller
Signed-off-by: Grant Likely
Signed-off-by: David S. Miller -
This reverts commit 047584ce94108012288554a5f84585d792cc7f8f.
This patch meshes badly with "net: Rework ucc_geth driver to use
of_mdio infrastructure" (0b9da337dca972e7a4144e298ec3adb8f244d4a4).
Since most of the patch needs to be reworked, it is clearer to revert
the patch and then apply the corrected versionSigned-off-by: Grant Likely
Signed-off-by: David S. Miller -
The skb mac_header field is sometimes NULL (or ~0u) as a sentinel
value. The places where skb is expanded add an offset which would
change this flag into an invalid pointer (or offset).Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Looking at the crash in log_martians(), one suspect is that the check for
mac header being set is not correct. The value of mac_header defaults to
0 on allocation, therefore skb_mac_header_was_set will always be true on
platforms using NET_SKBUFF_USES_OFFSET.Signed-off-by: Stephen Hemminger
Acked-by: Arnaldo Carvalho de Melo
Signed-off-by: David S. Miller
17 Jun, 2009
6 commits
-
commit 2b85a34e911bf483c27cfdd124aeb1605145dc80
(net: No more expensive sock_hold()/sock_put() on each tx)
changed initial sk_wmem_alloc value.Some protocols check sk_wmem_alloc value to determine if a timer
must delay socket deallocation. We must take care of the sk_wmem_alloc
value being one instead of zero when no write allocations are pending.Reported by Ingo Molnar, and full diagnostic from David Miller.
This patch introduces three helpers to get read/write allocations
and a followup patch will use these helpers to report correct
write allocations to user.Reported-by: Ingo Molnar
Signed-off-by: Eric Dumazet
Signed-off-by: David S. Miller -
Fix kernel-doc parameter name in phy_device.c.
Signed-off-by: Randy Dunlap
Signed-off-by: David S. Miller -
Fix up remaining drivers returning a magic or an errno value from their
ndo_start_xmit() functions that were missed in the first pass:- isdn_net: missed conversion
- bpqether: missed conversion: skb is freed, so return NETDEV_TX_OK
- hp100: intention appears to be to resubmit skb once resources are
available, but due to no queue handling it is dropped for now.
- lapbether: skb is freed, so return NETDEV_TX_OKSigned-off-by: Patrick McHardy
Signed-off-by: David S. Miller -
- Enabled SRIOV support in the driver.
- Call __vxge_hw_verify_pci_e_info() for the PF only. This function
verifies the negotiated link width and current link speed in the
Link Status Register (offset 12h) which are reserved fields for VFs
as per the SRIOV specification, section 3.5.8.
- Implemented David Miller's comment to remove the #ifdef CONFIG_PCI_IOV as
these intefaces have NOP versions declared when the defintion is not set.Signed-off-by: Sivakumar Subramani
Signed-off-by: Rastapur Santosh
Signed-off-by: Ramkrishna Vepa
Signed-off-by: David S. Miller -
Fix kernel-doc warnings (missing + extra entries) in skbuff.h.
Signed-off-by: Randy Dunlap
Signed-off-by: David S. Miller -
Noticed by Stephen Rothwell.
Signed-off-by: David S. Miller
16 Jun, 2009
12 commits
-
If socket destuction gets delayed to a timer, we try to
lock_sock() from that timer which won't work.Use bh_lock_sock() in that case.
Signed-off-by: David S. Miller
Tested-by: Ingo Molnar -
The code to compute VPD size didn't handle some systems that use
chip without VPD. Also some of the newer chips use some additional
registers to store the actual size, and wasn't worth putting the
additional complexity in, so just remove the code.No big loss since the code to set the VPD size was only a
convenience so that utilities would not read the extra space past
the end of the available VPD.Move the first PCI config read earlier to detect bad hardware
where it returns all ones and refuse loading driver before furthur
damage.Signed-off-by: Stephen Hemminger
Tested-by: Andy Whitcroft
Signed-off-by: David S. Miller -
When changing to a new BSSID or SSID, the code in
ieee80211_set_disassoc() needs to have the old data
still valid to be able to disconnect and clean up
properly. Currently, however, the old data is thrown
away before ieee80211_set_disassoc() is ever called,
so fix that by calling the function _before_ the old
data is overwritten.This is (one of) the issue(s) causing mac80211 to hold
cfg80211's BSS structs forever, and them thus being
returned in scan results after they're long gone.http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=2015
Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville -
If we are in PS mode, we have to process the received frame if
the SC_OP_WAIT_FOR_CAB bit is set.Changes-licensed-under: ISC
Signed-off-by: Gabor Juhos
Signed-off-by: John W. Linville -
We have to remain awake if the SC_OP_WAIT_FOR_CAB flag is set.
Changes-licensed-under: ISC
Signed-off-by: Gabor Juhos
Signed-off-by: John W. Linville -
The ath9k_ps_{wakeup,restore} calls must be in balance.
Changes-licensed-under: ISC
Signed-off-by: Gabor Juhos
Signed-off-by: John W. Linville -
A polarity error snuck into the rfkill rewrite's dell-laptop
conversion, fix it.Signed-off-by: Johannes Berg
Tested-by: Oliver Hartkopp
Signed-off-by: John W. Linville -
Now that the dust has settled a bit, improve the docs on rfkill
and include more information about /dev/rfkill.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville -
If we do not disconnect when a channel switch is requested,
we end up eventually detection beacon loss from the AP and
then disconnecting, without ever really telling the AP, so
we might just as well disconnect right away.Additionally, this fixes a problem with iwlwifi where the
driver will clear some internal state on channel changes
like this and then get confused when we actually go clear
that state from mac80211.It may look like this patch drops the no-IBSS check, but
that is already handled by cfg80211 in the wext handler it
provides for IBSS (cfg80211_ibss_wext_siwfreq).Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville -
I suspect that some driver bugs can cause queues to be
stopped while they shouldn't be, but it's hard to find
out whether that is the case or not without having any
visible information about the queues. This adds a file
to debugfs that allows us to see the queues' statuses.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville -
This ports the ath9k rfkill code to the new API offered by
cfg80211 and thus removes a lot of useless stuff.("With this series a kernel panic, which is a regression, during module
unload disappears." -- Vasanthakumar ThiagarajanOther patches in the series:
ath9k: Add helper to get ath9k specific current channel
ath9k: Make sure we have current channel in ah_curchan before rf
disable/enable-- JWL)
Signed-off-by: Johannes Berg
Cc: Luis Rodriguez
Tested-by: Vasanthakumar Thiagarajan
Signed-off-by: Vasanthakumar Thiagarajan
Signed-off-by: John W. Linville