summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband
Commit message (Collapse)AuthorAgeFilesLines
* IB: Whitespace fixesRoland Dreier2006-09-2215-33/+31
| | | | | | | | Remove some trailing whitespace that has snuck in despite the best efforts of whitespace=error-all. Also fix a few other whitespace bogosities. Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/cm: Randomize starting comm IDSean Hefty2006-09-221-8/+16
| | | | | | | | | Randomize the starting local comm ID to avoid getting a rejected connection due to a stale connection after a system reboot or reloading of the ib_cm. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mad: Remove unused includesJames Lentini2006-09-222-3/+0
| | | | | | | | | | The ib_mad module does not use a kthread function, but mad_priv.h includes <linux/kthread.h>. mad_rmpp.c does not do any DMA-related stuff, but includes <linux/dma-mapping.h>. Remove the unused includes. Signed-off-by: James Lentini <jlentini@netapp.com> Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mad: Add support for dual-sided RMPP transfers.Sean Hefty2006-09-221-3/+87
| | | | | | | | | | | | | | | | | | | | The implementation assumes that any RMPP request that requires a response uses DS RMPP. Based on the RMPP start-up scenarios defined by the spec, this should be a valid assumption. That is, there is no start-up scenario defined where an RMPP request is followed by a non-RMPP response. By having this assumption we avoid any API changes. In order for a node that supports DS RMPP to communicate with one that does not, RMPP responses assume a new window size of 1 if a DS ACK has not been received. (By DS ACK, I'm referring to the turn-around ACK after the final ACK of the request.) This is a slight spec deviation, but is necessary to allow communication with nodes that do not generate the DS ACK. It also handles the case when a response is sent after the request state has been discarded. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/cm: Use correct reject code for invalid GIDSean Hefty2006-09-221-11/+21
| | | | | | | | | Set the reject code properly when rejecting a request that contains an invalid GID. A suitable GID is returned by the IB CM in the additional reject information (ARI). This is a spec compliancy issue. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/cm: Enable atomics along with RDMA readsSean Hefty2006-09-221-1/+2
| | | | | | | | Enable atomic operations along with RDMA reads if a local RDMA read/atomic depth is provided by the user. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Return correct number of bits for static rate in query_qpJack Morgenstein2006-09-221-1/+1
| | | | | | | | Incorrect number of bits was taken for static_rate field. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Return port number for unconnected QPs in query_qpJack Morgenstein2006-09-221-4/+6
| | | | | | | | port_num was not being returned for unconnected QPs. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Fix default static rate returned for Tavor in AVJack Morgenstein2006-09-221-1/+1
| | | | | | | | | When default static rate is returned for Tavor, need to translate it to an ib rate value. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: control receive polarity inversionBryan O'Sullivan2006-09-226-0/+69
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: fix return value from ipath_pollBryan O'Sullivan2006-09-221-1/+5
| | | | | | | This stops the generic poll code from waiting for a timeout. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: allow SMA to be disabledBryan O'Sullivan2006-09-221-0/+7
| | | | | | | This is useful for testing purposes. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: handle sq_sig_all field correctlyBryan O'Sullivan2006-09-221-5/+8
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: put a limit on the number of QPs that can be createdBryan O'Sullivan2006-09-223-1/+25
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: validate path_mig_state properlyBryan O'Sullivan2006-09-221-1/+2
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: be more strict about testing the modify QP verbBryan O'Sullivan2006-09-222-2/+32
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: add serial number to hardware freeze error messageBryan O'Sullivan2006-09-222-4/+6
| | | | | | | | Also added the word "Hardware" after "Fatal" to make it more obvious that it's hardware, not software. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: support new QLogic product naming schemeBryan O'Sullivan2006-09-227-71/+68
| | | | | | | | This patch only renames files, fixes product names, and updates comments. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: account for attached QPs correctlyBryan O'Sullivan2006-09-221-0/+2
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: do not allow use of CQ entries with invalid countsBryan O'Sullivan2006-09-221-1/+6
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: add new minor device to allow sending of diag packetsBryan O'Sullivan2006-09-224-0/+176
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: trivial cleanupsBryan O'Sullivan2006-09-221-1/+0
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: remove stale references to userspace SMABryan O'Sullivan2006-09-2214-119/+35
| | | | | | | | | When we first submitted a userspace subnet management agent, it was rejected, so we left it out of the final driver submission. This patch removes a number of vestigial references to it. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: simplify debugging code after ipath_core and ib_ipath mergerBryan O'Sullivan2006-09-228-134/+17
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: simplify layering codeBryan O'Sullivan2006-09-2217-1329/+1126
| | | | | | | | | A lot of ipath layer code was only called in one place. Now that the ipath_core and ib_ipath drivers are merged, it's more sensible to simply inline the simple stuff that the layer code was doing. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: merge ipath_core and ib_ipath driversBryan O'Sullivan2006-09-2210-292/+62
| | | | | | | | There is little point in keeping the two drivers separate, so we are merging them. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: drop requirement that PIO buffers be mmaped write-onlyBryan O'Sullivan2006-09-221-9/+4
| | | | | | | Some userlands try to mmap these pages read-write, so accommodate them. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: fix handling of kpiobufsBryan O'Sullivan2006-09-221-1/+2
| | | | | | | | | Change comment: no longer imply that user can set ipath_kpiobufs to zero. Actually set ipath_kpiobufs from parameter. Previously only altered per-device ipath_lastport_piobuf, which was over-written in chip init. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: fix for crash on module unload, if cfgports < portcntBryan O'Sullivan2006-09-221-1/+5
| | | | | | | | Allocate enough pointers for all possible ports, to avoid problems in cleanup/unload. Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: lock resource limit counters correctlyBryan O'Sullivan2006-09-223-8/+38
| | | | | Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: More changes to support InfiniPath on PowerPC 970 systemsBryan O'Sullivan2006-09-224-0/+66
| | | | | | | | | | | Ordering of writethrough store buffers needs to be forced, and we need to use ifdef to get writethrough behavior to InfiniPath buffers, because there is no generic way to specify that at this time (similar to code in char/drm/drm_vm.c and block/z2ram.c). Signed-off-by: John Gregor <john.gregor@qlogic.com> Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipath: Performance improvements via mmap of queuesRalph Campbell2006-09-229-382/+785
| | | | | | | | | | Improve performance of userspace post receive, post SRQ receive, and poll CQ operations for ipath by allowing userspace to directly mmap() receive queues and completion queues. This eliminates the copying between userspace and the kernel in the data path. Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/uverbs: Pass userspace data to modify_srq and modify_qp methodsRalph Campbell2006-09-2210-15/+30
| | | | | | | | | | Pass a struct ib_udata to the low-level driver's ->modify_srq() and ->modify_qp() methods, so that it can get to the device-specific data passed in by the userspace driver. Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/uverbs: Allow resize CQ operation to return driver-specific dataRalph Campbell2006-09-221-2/+1
| | | | | | | | | | Add a ib_uverbs_resize_cq_resp.driver_data field so that low-level drivers can return data from a resize CQ operation to userspace. Have ib_uverbs_resize_cq() only copy the cqe field, to avoid having to bump the userspace ABI. Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ehca: Add driver for IBM eHCA InfiniBand adaptersHeiko J Schick2006-09-2233-0/+11574
| | | | | | | | Add a driver for IBM GX bus InfiniBand adapters, which are usable with some pSeries/System p systems. Signed-off-by: Heiko J Schick <schickhj.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/srp: Add port/device attributesIshai Rabinovitz2006-09-221-6/+24
| | | | | | | | | | | Add local_ib_device and local_ib_port attributes to srp scsi_host. These are needed when we want to connect to the same target through multiple distinct ports. Signed-off-by: Ishai Rabinovitz <ishai@mellanox.co.il> Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Include the header we really wantJames Lentini2006-09-221-1/+1
| | | | | Signed-off-by: James Lentini <jlentini@netapp.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/uverbs: Fix lockdep warning when QP is created with 2 CQsRoland Dreier2006-09-221-15/+19
| | | | | | | | | | | | Lockdep warns when userspace creates a QP that uses different CQs for send completions and receive completions, because both CQs are locked and their mutexes belong to the same lock class. However, we know that the mutexes are distinct and the nesting is safe (there is no possibility of AB-BA deadlock because the mutexes are locked with down_read()), so annotate the situation with SINGLE_DEPTH_NESTING to get rid of the lockdep warning. Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/uverbs: Use idr_read_cq() where appropriateRoland Dreier2006-09-221-10/+6
| | | | | | | There were two functions that open-coded idr_read_cq() in terms of idr_read_uobj() rather than using the helper. Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/ipoib: Fix flush/start xmit race (from code review)Michael S. Tsirkin2006-09-221-4/+8
| | | | | | | | | | Prevent flush task from freeing the ipoib_neigh pointer, while ipoib_start_xmit() is accessing the ipoib_neigh through the pointer it has loaded from the skb's hardware address. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Don't use privileged UAR for kernel accessMichael S. Tsirkin2006-09-221-1/+1
| | | | | | | | Make kernel use UAR2 instead of UAR1 for hardware access: this adds sanity checking from the hardware side, without any performance cost. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Fix lid used for sending trapsJack Morgenstein2006-09-221-1/+1
| | | | | | | | | | | | | | | The SM LID used to send traps to is incorrectly set to port LID. This is a regression from 2.6.17 -- after a PortInfo MAD is received, no traps are sent to the SM LID. The traps go to the loopback interface instead, and are dropped there. The SM LID should be taken from the sm_lid of the PortInfo response. The bug was introduced by commit 12bbb2b7be7f5564952ebe0196623e97464b8ac5: IB/mthca: Add client reregister event generation Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il> Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* RDMA/cma: Increase the IB CM retry count in CMAMichael S. Tsirkin2006-09-141-1/+1
| | | | | | | | | | | | 3 seems like a low number of IB Communication Manager retries to set; we see connections failing under stress, and in any case 3 just looks like an arbitrary number. 15 is the max value allowed by the InfiniBand spec. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Acked-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IPoIB: Retry failed send-only multicast group joinsEli Cohen2006-09-141-0/+1
| | | | | | | | | | When a send-only multicast group join fails, mcast->query must be set to NULL. Otherwise, IPoIB will never retry the join and the multicast group will never be reachable. Signed-off-by: Eli Cohen <eli@mellanox.co.il> Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/srp: Don't schedule reconnect from srpIshai Rabinovitz2006-09-141-14/+0
| | | | | | | | | | | | | | | | If there is a problem in the connection, the SCSI mid-layer will eventually call srp_reset_host(), which will call srp_reconnect(), so we do not need to schedule a call to srp_reconnect_work() from srp_completion(). Removing this prevents srp_reset_host() from failing if a reconnect scheduled from srp_completion() is already in progress, which in turn was causing crashes as both SCSI midlayer and srp_reconnect() were cancelling commands. Signed-off-by: Ishai Rabinovitz <ishai@mellanox.co.il> Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* IB/mthca: Use IRQ safe locks to protect allocation bitmapsRoland Dreier2006-08-311-4/+11
| | | | | | | | | | | It is supposed to be OK to call mthca_create_ah() and mthca_destroy_ah() from any context. However, for mem-full HCAs, these functions use the mthca_alloc() and mthca_free() bitmap helpers, and those helpers use non-IRQ-safe spin_lock() internally. Lockdep correctly warns that this could lead to a deadlock. Fix this by changing mthca_alloc() and mthca_free() to use spin_lock_irqsave(). Signed-off-by: Roland Dreier <rolandd@cisco.com>
* Merge gregkh@master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6Greg Kroah-Hartman2006-08-261-20/+2
|\
| * Merge ../linux-2.6James Bottomley2006-08-067-29/+52
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: arch/ia64/hp/sim/simscsi.c Stylistic differences in two separate fixes for buffer->request_buffer problem. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * | [SCSI] iscsi bugfixes: fix oops when iser is flushing ioMike Christie2006-07-281-20/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we enter recovery and flush the running commands we cannot freee the connection before flushing the commands. Some commands may have a reference to the connection that needs to be released before. iscsi_stop was forcing the term and suspend too early and was causing a oops in iser, so this patch removes those callbacks all together and allows the LLD to handle that detail. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* | | IB/mthca: Update HCA firmware revisionsMichael S. Tsirkin2006-08-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the driver's list of HCA firmware revisions to make sure people running Sinai firmware older than 1.1.0 get a message suggesting a firmware upgrade. Update the Arbel versions as well while we are at it. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
OpenPOWER on IntegriCloud