22 Jul, 2011
18 commits
-
An implementation of a code generator for BPF programs to speed up packet
filtering on PPC64, inspired by Eric Dumazet's x86-64 version.Filter code is generated as an ABI-compliant function in module_alloc()'d mem
with stackframe & prologue/epilogue generated if required (simple filters don't
need anything more than an li/blr). The filter's local variables, M[], live in
registers. Supports all BPF opcodes, although "complicated" loads from negative
packet offsets (e.g. SKF_LL_OFF) are not yet supported.There are a couple of further optimisations left for future work; many-pass
assembly with branch-reach reduction and a register allocator to push M[]
variables into volatile registers would improve the code quality further.This currently supports big-endian 64-bit PowerPC only (but is fairly simple
to port to PPC32 or LE!).Enabled in the same way as x86-64:
echo 1 > /proc/sys/net/core/bpf_jit_enable
Or, enabled with extra debug output:
echo 2 > /proc/sys/net/core/bpf_jit_enable
Signed-off-by: Matt Evans
Acked-by: Eric Dumazet
Signed-off-by: David S. Miller -
so that ethtool -i will display it correctly on big endian systems.
Signed-off-by: Michael Chan
Reviewed-by: Bhanu Prakash Gollapudi
Signed-off-by: David S. Miller -
The bnx2fc driver needs to handle netdev events on VLAN devices.
Signed-off-by: Michael Chan
Reviewed-by: Bhanu Prakash Gollapudi
Signed-off-by: David S. Miller -
Otherwise, the firmware will not respond and we'll have to wait for
timeout. Refactor the wait loop we already have into a separate
function for this purpose.Signed-off-by: Michael Chan
Reviewed-by: Bhanu Prakash Gollapudi
Signed-off-by: David S. Miller -
Include FCoE CID space only for E2_PLUS devices. Remove old CID
offset adjustments that are no longer needed.Signed-off-by: Michael Chan
Reviewed-by: Bhanu Prakash Gollapudi
Signed-off-by: David S. Miller -
This patch fixes NVRAM selftest failures for 5720 devices by fixing the
checksum area size.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
Newer VPD datablocks can exceed the size the tg3 driver is traditionally
used to. This can cause some of the routines that operate on the VPD
data to fail when in-fact they could have succeeded had they known the
correct size. This patch fixes the problem.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
This patch fixes interrupt selftest failures for recent devices (57765,
5717, 5718. 5719, 5720) by disabling MSI one-shot mode and applying the
status tag workaround to the selftest code.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
The current RSS indirection table is populated such that more traffic
will hit the first RSS ring. This patch adjusts the indirection table
so that the load is more evenly distributed.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
This patch adds the 5719 and the 5720 to the list of devices that are
EEE capable.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
Occasionally, when the network cable is removed after a successful
autonegotiation, the device will not send a link down interrupt to the
driver. This happens because of a bad interaction of an EEE
workaround. The fix is to adjust the code so that the root cause
condition does not happen.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
This patch increases the scope of the EEE interoperability workaround
to include more asic revisions. The workarond value is tuned to
workaround a link flap issue at 100Mbps.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
Commit f2096f94b514d88593355995d5dd276961e88af1, entitled
"tg3: Add 5720 H2BMC support", needed to add code to preserve some bits
set by firmware. Unfortunately the new code causes throughput to stop
after a chip reset because it enables state machines before they are
ready. This patch undoes the problematic code. The bits will be
restored later in the init sequence.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller -
This patch fixes both the failure in the self-test on 578xx
and a hole in a parity recovery flow that this failure
has discovered:
- internal 'pending' state in a VLAN_MAC object wasn't been cleared
when the object state change was called with DRV_ONLY flag, which in
particular happens when a parity error happens during the self-test.
- bp->sp_state wasn't cleared in the similar circumstances as described
above.Signed-off-by: Vladislav Zolotarov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Fix the parity errors recovery flow for 578xx:
- Add a separate column for the 578xx in the parity mask
registers DB.
- Fix the bnx2x_process_kill_chip_reset() to handle the blocks
newly introduced in the 578xx.Cover ATC and PGLUE_B blocks for 57712 and 578xx.
Signed-off-by: Vladislav Zolotarov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Read FIP MAC address from SHMEM's "port" section
similar to what we do in a MF mode when we read it from
a "func" section of SHMEM.Signed-off-by: Vladislav Zolotarov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Registers dump code erroneously treated 578xx as 57712.
This patch fixes the above and also removes unused data
structures.Signed-off-by: Vladislav Zolotarov
Signed-off-by: Ariel Elior
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Vladislav Zolotarov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller
20 Jul, 2011
14 commits
-
Signed-off-by: Matvejchikov Ilya
Acked-by: Oliver Hartkopp
Signed-off-by: David S. Miller -
Signed-off-by: Matvejchikov Ilya
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
create DCB related states in function state-machine
allow handling of DCB errors from FW
allow disablement of DCB in FW, when peer disappears or error
clean up unused functions/variables as pointed by
David BindermanReported-by: David Binderman
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
It may take some time to cnic to respond, this prevents tx_timeout
when it happens.Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller
19 Jul, 2011
8 commits
-
e542a2269f232d61270ceddd42b73a4348dee2bb (r8169: adjust the RxConfig settings)
broke the return from promiscuous mode to physical address match mode.Signed-off-by: Francois Romieu
Cc: Signed-off-by: Hayes Wang -
As we now only update used ring after enabling
the backend, we can write flags with __put_user:
as that's done on data path, it matters.Signed-off-by: Michael S. Tsirkin
-
Fix get/put refcount imbalance with zero copy,
which caused qemu to hang forever on guest driver unload.Signed-off-by: Michael S. Tsirkin
-
We need to log writes when updating used flags and avail event
fields. Otherwise the guest may see a stale value after migration and
miss notifying the host.Signed-off-by: Jason Wang
Signed-off-by: Michael S. Tsirkin -
Move the used ring initialization after backend was set. This
makes it possible to disable the backend and tweak the used ring,
then restart. This will also make it possible to log the used ring
write correctly.Signed-off-by: Jason Wang
Signed-off-by: Michael S. Tsirkin -
Signed-off-by: Andy Shevchenko
Cc: Wolfgang Grandegger
Acked-by: Oliver Hartkopp
Signed-off-by: David S. Miller -
This patch adds new field 'force_sf_dma_mode' to plat_stmmacenet_data
struct to allow users to specify if they want to use force store forward
eventhough tx_coe is not available in hw.
without this flag stmmac driver will use cut-thru mode not use
store-forward mode.Signed-off-by: Srinivas Kandagatla
Signed-off-by: Giuseppe Cavallaro
Signed-off-by: David S. Miller -
This patch, provided by ST SPEAr developers,
has fixed a problem raised on ARM CA9 where
happened that the dma_transmission was enabled before
the dma descriptors were properly filled. To guarantee this
data memory barriers have been explicity used in the driver.Signed-off-by: Shiraz Hashim
Signed-off-by: Giuseppe Cavallaro
Signed-off-by: David S. Miller