- 10 10月, 2008 1 次提交
-
-
由 Chien Tung 提交于
Referencing cm_node after it is freed via rem_ref_cm_node() causes a slab corruption. There is no need to set cm_node->cm_id to NULL in mini_cm_close(). Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 09 10月, 2008 2 次提交
-
-
由 Vladimir Sokolovsky 提交于
Set RLKEY bit in the HW context for kernel QPs so that kernel QPs can use the reserved L_Key for memory reference. Signed-off-by: NVladimir Sokolovsky <vlad@mellanox.co.il> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
error_module is 5 bits wide not 4. The corresponding crit_error_count array is correct with 32 entries. Signed-off-by: NChien Tung <ctung@neteffect.com> -- drivers/infiniband/hw/nes/nes_hw.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 04 10月, 2008 2 次提交
-
-
由 Bob Sharp 提交于
Fix routed RDMA connections to destinations where the next hop is not the final destination. Use neigh_*() to properly locate neighbor. Signed-off-by: NBob Sharp <bsharp@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com>
-
由 Vadim Makhervaks 提交于
Change management of perfect filter table to allow enhanced performance applications. Signed-off-by: NVadim Makhervaks <vmakhervaks@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 01 10月, 2008 17 次提交
-
-
由 Faisal Latif 提交于
Handle async error NES_AEQE_AEID_AMP_BOUNDS_VIOLATION. Signed-off-by: NFaisal Latif <flatif@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Mask off a critical error after 100 critical error interrupts to keep the system "sane". Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Mask off MAC interrupts on netdev_stop to prevent spurious MAC interrupts on unload/reload of iw_nes. Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Fill in firmware version for ethtool_drvinfo. Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 John Lacombe 提交于
Use timer value set via ethtool intead of #defines. Signed-off-by: NJohn Lacombe <jlacombe@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Bob Sharp 提交于
Use correct define for max TSO fragments. Signed-off-by: NBob Sharp <bsharp@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Bob Sharp 提交于
Re-enable multicast and unicast after changing MTU. Signed-off-by: NBob Sharp <bsharp@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Bob Sharp 提交于
Signed-off-by: NBob Sharp <bsharp@neteffect.com> Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Clear MDC bits before setting them to a new value. Adjust MDC value for 10G. Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Add a module parameter wqm_quanta. It controls the number of segments transmitted at a time. Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Change permission to 0644 so root can set mpa_version, disable_mpa_crc, send_first, and nes_drv_opt at runtime. Signed-off-by: NSweta Bhatt <sweta.bhatt@einfochips.com> Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Jon Mason 提交于
When running ibv_devinfo, the active_mtu returned is garbage. This is due to the field not being populated in the query_port function in the driver. The patch below populates the active_mtu field with a MTU of 2k. It also zeros the struct, so that any new additions to it will return 0. Signed-off-by: NJon Mason <jon@opengridcomputing.com> Acked-by: NSteve Wise <swise@opengridcomputing.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
Add support for NetEffect 4 port 1G HP blade card. The mapping between physical port and MAC is different from the standup card. Signed-off-by: NChien Tung <ctung@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Faisal Latif 提交于
Signed-off-by: NFaisal Latif <flatif@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Hefty, Sean 提交于
commit 110cf374 ("infiniband: make cm_device use a struct device and not a kobject.") introduced a memory leak, since it deleted cm_release_dev_obj(), which was where cm_dev was freed. Fix this by freeing the leaked structure after calling device_unregister(). Signed-off-by: NSean Hefty <sean.hefty@intel.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Roland Dreier 提交于
Currently, IPoIB is an LLTX driver that uses its own IRQ-disabling tx_lock. Not only do we want to get rid of LLTX, this actually causes problems because of the skb_orphan() done with this tx_lock held: some skb destructors expect to be run with interrupts enabled. The simplest fix for this is to get rid of the driver-private tx_lock and stop using LLTX. We kill off priv->tx_lock and use netif_tx_lock[_bh]() instead; the patch to do this is a tiny bit tricky because we need to update places that take priv->lock inside the tx_lock to disable IRQs, rather than relying on tx_lock having already disabled IRQs. Also, there are a couple of places where we need to disable BHs to make sure we have a consistent context to call netif_tx_lock() (since we no longer can use _irqsave() variants), and we also have to change ipoib_send_comp_handler() to call drain_tx_cq() through a timer rather than directly, because ipoib_send_comp_handler() runs in interrupt context and drain_tx_cq() must run in BH context so it can call netif_tx_lock(). Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 30 9月, 2008 2 次提交
-
-
由 Roland Dreier 提交于
Back in prehistoric (pre-git!) days, the kernel's MSI-X support did request_mem_region() on a device's MSI-X tables, which meant that a driver that enabled MSI-X couldn't use pci_request_regions() (since that would clash with the PCI layer's MSI-X request). However, that was removed (by me!) years ago, so mthca can just use pci_request_regions() and pci_release_regions() instead of its own much more complicated code that avoids requesting the MSI-X tables. Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Yannick Cote 提交于
Handle the case where posting a send is requested when the link is down. This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=1117>. Signed-off-by: NYannick Cote <yannick.cote@qlogic.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 26 9月, 2008 1 次提交
-
-
由 Roland Dreier 提交于
Commit ee1e2c82 ("IPoIB: Refresh paths instead of flushing them on SM change events") changed how paths are flushed on an SM event. This change introduces a problem if the path record query triggered by fails, causing path->ah to become NULL. A later successful path query will then trigger WARN_ON() in path_rec_completion(), and crash because path->ah has already been freed, so the ipoib_put_ah() inside the lock in path_rec_completion() may actually drop the last reference (contrary to the comment that claims this is safe). Fix this by updating path->ah and freeing old_ah only when the path record query is successful. This prevents the neighbour AH and that path AH from getting out of sync. This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=1194> Reported-by: NRabah Salem <ravah@mellanox.com> Debugged-by: NEli Cohen <eli@mellanox.co.il> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 21 9月, 2008 4 次提交
-
-
由 Julia Lawall 提交于
A break after a return serves no purpose, remove it. Signed-off-by: NJulia Lawall <julia@diku.dk> Reviewed-by: NRichard Genoud <richard.genoud@gmail.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Michael Brooks 提交于
This fixes the problem of incoming BMA responses being dropped due to a bad "is response" check. Fix the test to use the ib_response_mad() predicate, which correctly handles BMA MADs. This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=988>. Signed-off-by: NMichael Brooks <michael.brooks@qlogic.com> Acked-by: NSean Hefty <sean.hefty@intel.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Ralph Campbell 提交于
The code to set the source LID in the sent LRH was not setting the low bits if LMC != 0 for RC/UC QPs. Signed-off-by: NRalph Campbell <ralph.campbell@qlogic.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Alexander Schmidt 提交于
When a QP goes into error state, it is required that CQ entries with a flush error status are delivered to the application for any outstanding work requests. eHCA does not do this in hardware, so this patch adds software flush CQE generation to the ehca driver. Whenever a QP gets into error state, it is added to the QP error list of its respective CQ. If the error QP list of a CQ is not empty, poll_cq() generates flush CQEs before polling the actual CQ. Signed-off-by: NAlexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 17 9月, 2008 2 次提交
-
-
由 Yossi Etigin 提交于
Taking rtnl_lock in ipoib_mcast_join_complete() causes a deadlock with ipoib_stop(). We avoid it by scheduling the piece of code that takes the lock on ipoib_workqueue instead of executing it directly. This works because we only flush the ipoib_workqueue with the RTNL not held. The deadlock happens because ipoib_stop() calls ipoib_ib_dev_down() which calls ipoib_mcast_dev_flush(), which calls ipoib_mcast_free(), which calls ipoib_mcast_leave(). The latter calls ib_sa_free_multicast(), and this waits until the multicast completion handler finishes. This handler is ipoib_mcast_join_complete(), which waits for the rtnl_lock(), which was already taken by ipoib_stop(). This bug was introduced in commit a77a57a1 ("IPoIB: Fix deadlock on RTNL in ipoib_stop()"). Signed-off-by: NYossi Etigin <yosefe@voltaire.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Faisal Latif 提交于
Fix QP not being destroyed properly on the client, which leads to userspace programs hanging on exit. This is a missing chunk from the connection management rewrite in commit 6492cdf3 ("RDMA/nes: CM connection setup/teardown rework"). Signed-off-by: NFaisal Latif <flatif@neteffect.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 16 9月, 2008 1 次提交
-
-
由 Vladimir Sokolovsky 提交于
Byte swap the addresses in the page list for fast register work requests to big endian to match what the HCA expectx. Also, the addresses must have the "present" bit set so that the HCA knows it can access them. Otherwise the HCA will fault the first time it accesses the memory region. Signed-off-by: NVladimir Sokolovsky <vlad@mellanox.co.il> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 28 8月, 2008 1 次提交
-
-
由 Vladimir Sokolovsky 提交于
Initialize the L_Key and R_Key for memory regions returned from mlx4_ib_alloc_fast_reg_mr(). Otherwise callers just get garbage for the memory keys and can't do anything useful with these MRs. Signed-off-by: NVladimir Sokolovsky <vlad@mellanox.co.il> Signed-off-by: NRoland Dreier <rolandd@cisco.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 24 8月, 2008 1 次提交
-
-
由 Adrian Bunk 提交于
This patch lets the files using linux/version.h match the files that #include it. Signed-off-by: NAdrian Bunk <bunk@kernel.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 20 8月, 2008 1 次提交
-
-
由 Roland Dreier 提交于
Commit c8c2afe3 ("IPoIB: Use rtnl lock/unlock when changing device flags") added a call to rtnl_lock() in ipoib_mcast_join_task(), which is run from the ipoib_workqueue. However, ipoib_stop() (which is run inside rtnl_lock()) flushes this workqueue, which leads to a deadlock if the join task is pending. Fix this by simply not flushing the workqueue from ipoib_stop(). It turns out that we really don't care about workqueue tasks running during or after ipoib_stop(), as long as we make sure to flush the workqueue before unregistering a netdev. This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=1114>. Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 16 8月, 2008 2 次提交
-
-
由 Dave Olson 提交于
The check for max physical address was incorrect, thus limiting the range of allowed physical addresses. Signed-off-by: NDave Olson <dave.olson@qlogic.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Ralph Campbell 提交于
If a UD QP has some work requests queued to be sent by the DMA engine followed by a local loopback work request, we have to wait for the previous work requests to finish or the completion for the local loopback work request would be generated out of order. The problem was that the work request queue pointer was already updated so that the request would not be processed when the DMA queue drained. Signed-off-by: NRalph Campbell <ralph.campbell@qlogic.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 13 8月, 2008 3 次提交
-
-
由 Alexander Schmidt 提交于
Under rare circumstances, the ehca hardware might erroneously generate two CQEs for the same WQE, which is not compliant to the IB spec and will cause unpredictable errors like memory being freed twice. To avoid this problem, the driver needs to detect the second CQE and discard it. For this purpose, introduce an array holding as many elements as the SQ of the QP, called sq_map. Each sq_map entry stores a "reported" flag for one WQE in the SQ. When a work request is posted to the SQ, the respective "reported" flag is set to zero. After the arrival of a CQE, the flag is set to 1, which allows to detect the occurence of a second CQE. The mapping between WQE / CQE and the corresponding sq_map element is implemented by replacing the lowest 16 Bits of the wr_id with the index in the queue map. The original 16 Bits are stored in the sq_map entry and are restored when the CQE is passed to the application. Signed-off-by: NAlexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Alexander Schmidt 提交于
The idr_find() function may fail when trying to get the QP that is associated with a CQE, e.g. when a QP has been destroyed between the generation of a CQE and the poll request for it. In consequence, the return value of idr_find() must be checked and the CQE must be discarded when the QP cannot be found. Signed-off-by: NAlexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Alexander Schmidt 提交于
When the ehca driver detects an invalid opcode in a CQE, it currently passes the CQE to the application and returns with success. This patch changes the CQE handling to discard CQEs with invalid opcodes and to continue reading the next CQE from the CQ. Signed-off-by: NAlexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-