15 Oct, 2013
1 commit
-
Pull infiniband updates from Roland Dreier:
"Last batch of IB changes for 3.12: many mlx5 hardware driver fixes
plus one trivial semicolon cleanup"* tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
IB: Remove unnecessary semicolons
IB/mlx5: Ensure proper synchronization accessing memory
IB/mlx5: Fix alignment of reg umr gather buffers
IB/mlx5: Fix eq names to display nicely in /proc/interrupts
mlx5: Fix error code translation from firmware to driver
IB/mlx5: Fix opt param mask according to firmware spec
mlx5: Fix opt param mask for sq err to rts transition
IB/mlx5: Disable atomic operations
mlx5: Fix layout of struct mlx5_init_seg
mlx5: Keep polling to reclaim pages while any returned
IB/mlx5: Avoid async events on invalid port number
IB/mlx5: Decrease memory consumption of mr caches
mlx5: Remove checksum on command interface commands
IB/mlx5: Fix memory leak in mlx5_ib_create_srq
IB/mlx5: Flush cache workqueue before destroying it
IB/mlx5: Fix send work queue size calculation
11 Oct, 2013
4 commits
-
It's helpful for a driver to put the pci slot name in its interrupt
names, so /proc/interrupts will show the pci slot of the device.Signed-off-by: Sagi Grimberg
Signed-off-by: Eli Cohen
Signed-off-by: Roland Dreier -
Limits exceeded should be translated to ENOMEM.
Signed-off-by: Eli Cohen
Signed-off-by: Roland Dreier -
Change mlx5_reclaim_startup_pages() to keep polling while any pages
are returned. If none are returned, keep polling for five more seconds
before exiting with an error message.Signed-off-by: Eli Cohen
Signed-off-by: Roland Dreier -
Checksum calculations consume CPU resources and can be significant to
the rate of resource creation/destruction.Signed-off-by: Eli Cohen
Signed-off-by: Roland Dreier
02 Oct, 2013
2 commits
-
o Interface needs to be brought down and up while configuring SR-IOV.
Protect interface up/down using rtnl_lock()/rtnl_unlock()Signed-off-by: Manish Chopra
Signed-off-by: David S. Miller -
The dma descriptors indexes are only initialized on the probe function.
If a packet is on the buffer when temac_stop is called, the dma
descriptors indexes can be left on a incorrect state where no other
package can be sent.So an interface could be left in an usable state after ifdow/ifup.
This patch makes sure that the descriptors indexes are in a proper
status when the device is open.Signed-off-by: Ricardo Ribalda Delgado
Signed-off-by: David S. Miller
01 Oct, 2013
4 commits
-
__initdata tag should be placed between the variable name and equal
sign for the variable to be placed in the intended .init.data section.In this particular case __initdata is incorrect as moxart_mac_driver
can be used after the driver gets initialized.Also while at it static-ize moxart_mac_driver.
Signed-off-by: Bartlomiej Zolnierkiewicz
Signed-off-by: Kyungmin Park
Signed-off-by: David S. Miller -
Currently IEEE 1588 timer reference clock source is determined through
hard-coded value in gianfar_ptp driver. This patch allows to select ptp
clock source by means of device tree file node.For instance:
fsl,cksel = ;
for using external (TSEC_TMR_CLK input) high precision timer
reference clock.Other acceptable values:
: eTSEC system clock
: eTSEC1 transmit clock
: RTC clock inputWhen this attribute isn't used, eTSEC system clock will serve as
IEEE 1588 timer reference clock.Signed-off-by: Aida Mynzhasova
Acked-by: Kumar Gala
Signed-off-by: David S. Miller -
This reverts commit 894116bd0e9b7749a0c4b6c62dec13c2a0ccef68.
I applied the wrong version of this patch, correct
version coming up.Signed-off-by: David S. Miller
-
Currently IEEE 1588 timer reference clock source is determined through
hard-coded value in gianfar_ptp driver. This patch allows to select ptp
clock source by means of device tree file node.For instance:
fsl,cksel = ;
for using external (TSEC_TMR_CLK input) high precision timer
reference clock.Other acceptable values:
: eTSEC system clock
: eTSEC1 transmit clock
: RTC clock inputWhen this attribute isn't used, eTSEC system clock will serve as
IEEE 1588 timer reference clock.Signed-off-by: Aida Mynzhasova
Acked-by: Richard Cochran
Signed-off-by: David S. Miller
28 Sep, 2013
8 commits
-
o Commit 7e2cf4feba058476324dc545e3d1b316998c91e6
("qlcnic: change driver hardware interface mechanism")
has overwritten
commit b43e5ee76a4320c070cf0fe65cf4927198fbb4d1
("qlcnic: Register device in FAILED state")Signed-off-by: Sucheta Chakraborty
Signed-off-by: David S. Miller -
VLAN priority is not being displayed for a VF currently when user executes
"ip link show" command. This patch fixes it.Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller -
Thix fix allows the VLAN priority to be configured for a VF interface
via the "ip link set DEVICE vf NUM" path.Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller -
Now the VF interfaces have privilege to add VLANs.
Allow VLANs to be configured on these interfaces.Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller -
In BE3-R, when UMC is enabled, the number of VLANs that can be added
to the interface is reduced to 15.Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller -
When the interface runs out of the allocated entries in VLAN table,
we program the interface in VLAN promiscuous mode.
Use OPCODE_COMMON_NTWK_RX_FILTER to set VLAN Promiscuous mode
instead of OPCODE_COMMON_NTWK_VLAN_CONFIG.Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller -
Size of be_nic_res_desc structure is incorrect. Fix it.
Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller -
Tx on SH-R can lockup if the packet size is less than 32 bytes.
Pad such packets to a safer 36-byte size.
Patch uses the Lancer-R workaround - which checks for packet
Signed-off-by: David S. Miller
27 Sep, 2013
7 commits
-
coccicheck shows:
drivers/net/ethernet/intel/i40e/i40e_adminq.c:704:2-8: Replace memcpy
with struct assignment
drivers/net/ethernet/intel/i40e/i40e_adminq.c:763:1-7: Replace memcpy
with struct assignment
drivers/net/ethernet/intel/i40e/i40e_adminq.c:810:2-8: Replace memcpy
with struct assignment
drivers/net/ethernet/intel/i40e/i40e_common.c:510:2-8: Replace memcpy
with struct assignmentFix each of them with a *a = *b;
Signed-off-by: Jesse Brandeburg
Tested-by: Kavindya Deegala
Signed-off-by: Jeff Kirsher -
As mentioned by Joe Perches, clean up return values in some functions
making sure to have consistent return types, not mixing types.A couple of Joe's comments suggested returning void, but since
the functions in question are ndo defined, the return values are fixed.
So make a comment in the header that notes this is a function called by
net_device_ops.v2: fix post increment bug in return
CC: Joe Perches
Signed-off-by: Jesse Brandeburg
Tested-by: Kavindya Deegala
Signed-off-by: Jeff Kirsher -
When calling admin queue functions the driver should use aq_ret
variable to help make clear that the return value is not a regular
return variable.This allows for clean up of the return types that were previously
converted to int.Signed-off-by: Jesse Brandeburg
Tested-by: Kavindya Deegala
Signed-off-by: Jeff Kirsher -
As mentioned by Joe Perches clean up a loop flow.
Signed-off-by: Jesse Brandeburg
CC: Joe Perches
Tested-by: Kavindya Deegala
Signed-off-by: Jeff Kirsher -
As mentioned by Joe Perches, we should be using
foo = alloc(...)
if (!foo)
return -ENOMEM;return 0;
Signed-off-by: Jesse Brandeburg
CC: Joe Perches
Tested-by: Kavindya Deegala
Signed-off-by: Jeff Kirsher -
Add back 82580 loopback tests to ethtool.
Signed-off-by: Todd Fujinaka
Tested-by: Aaron Brown
Signed-off-by: Jeff Kirsher -
Outgoing packets sent by via-rhine have their VLAN PCP field off by one
(when hardware acceleration is enabled). The TX descriptor expects only VID
and PCP (without a CFI/DEI bit).Peter Boström noticed and reported the bug.
Signed-off-by: Roger Luethi
Cc: Peter Boström
Signed-off-by: David S. Miller
24 Sep, 2013
8 commits
-
Also changed a log message to indicate that memory was not allocated
instead of memory not available!Signed-off-by: Malahal Naineni
Acked-by: Jitendra Kalsaria
Signed-off-by: David S. Miller -
In my patch c194992cbe71c20bb3623a566af8d11b0bfaa721 ("skge: fix
broken driver") I didn't fix the skge bug correctly. The value of the
new mapping (not old) was passed to pci_unmap_single.If we enable CONFIG_DMA_API_DEBUG, it results in this warning:
WARNING: CPU: 0 PID: 0 at lib/dma-debug.c:986 check_sync+0x4c4/0x580()
skge 0000:02:07.0: DMA-API: device driver tries to sync DMA memory it has
not allocated [device address=0x000000023a0096c0] [size=1536 bytes]This patch makes the skge driver pass the correct value to
pci_unmap_single and fixes the warning. It copies the old descriptor to
on-stack variable "ee" and unmaps it if mapping of the new descriptor
succeeded.This patch should be backported to 3.11-stable.
Signed-off-by: Mikulas Patocka
Reported-by: Francois Romieu
Tested-by: Mikulas Patocka
Signed-off-by: David S. Miller -
Commit b9871bcf "bnx2x: VF RSS support - PF side" has deprecated one of
the previous existing messages. If an old VF driver were to send this message
to the PF then the PF will not reply and leave the mailbox in an unsteady
state (and cause a timeout on the VF side).Wait until firmware ack is written before unlocking channel
Signed-off-by: Ariel Elior
Signed-off-by: Yuval Mintz
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
During flows which mask block attentions (e.g., register dump) all parities
are masked. However, unlike other blocks the MCP's attention is not masked
inside the block but rather the indication to the driver. If another attention
(e.g., link change) will occour while there's an MCP parity, the driver will
ignore the fact that the parity is masked and erroneously report a parity.This patch forces the driver to read the MCP masking while checking for
parities.Signed-off-by: Yuval Mintz
Signed-off-by: Ariel Elior
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
During error flows while loading cnic the return value was incorrectly replaced
by that of bnx2x_set_real_num_queues(); If that function was to finish
successfully then the cnic would have mistakenly thought the load ended
successfully, causing issues (& panics) later on.Signed-off-by: Yuval Mintz
Signed-off-by: Ariel Elior
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
bnx2x_iov_static_resc() should be called after IGU was read for information on
the number of available VFs, so that resources will be correctly set.Signed-off-by: Ariel Elior
Signed-off-by: Yuval Mintz
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Due to incorrect usage of PF macros when reading information relating to
interrupts, some PFs were erroneously unable to support VFs.Signed-off-by: Ariel Elior
Signed-off-by: Yuval Mintz
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
When system CPU is stressed it's possible that the driver will not be able
to pulse the FW every second, which will cause the log to be filled with
error messages.Increasing the threshold to 5 seconds seems to be enough to eliminate the
issue.Signed-off-by: Eilon Greenstein
Signed-off-by: Yuval Mintz
Signed-off-by: Ariel Elior
Signed-off-by: David S. Miller
23 Sep, 2013
5 commits
-
On 848xx PHY (10G-baseT), half-duplex was always advertised regardless of the
actual configuration. Change the 848xx duplex settings to advertise half-duplex
only if configured.Signed-off-by: Yaniv Rosner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Fix Warpcore mode setting when active DAC (Direct Attached Cable) is detected.
Signed-off-by: Yaniv Rosner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
when 1G-optic module was plugged in, internal loopback test failed because the
driver used to check the optic module (with no need), and for 1G optic module,
the link speed was forced down to 1G, while the XMAC (10G MAC) was enabled.
This patch avoid accessing optic module in case internal loopback was selected,
and update the link speed in case 1G optic module was detected during init
stage.Signed-off-by: Yaniv Rosner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Relocate bnx2x_disable_kr2 function, and use it to disable KR2 in case it is not
configured in order to clear it's configuration, otherwise the link may come up
at 20G instead of the requested 10G-KR. In addition, restart AN after
disabling KR2 as part of the KR2 work-around.Signed-off-by: Yaniv Rosner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Previously, in case of KR link down, the driver would reset the PHY and restart
auto negotiation only when old Warpcore microcode was used (below D108).
This patch comes to generalize this by keep trying to restart KR link,
regardless of Warpcore microcode, since it was found that it solves another link
issue which source is a link-partner. As part of this change, the signal
detect is no longer a condition to apply the work-around to cover this new case.
Like before, as long as the link is down, AN will be restarted every 2 seconds.Signed-off-by: Yaniv Rosner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller
21 Sep, 2013
1 commit
-
The SFC9120 MC firmware often takes longer than 20ms to reboot and
update the warm boot count in BIU_MC_SFT_STATUS_REG. A timeout of
250ms is very generous for an MC reboot.Signed-off-by: Ben Hutchings