90ab5ee94171b3e28de6bb42ee30b527014e0be7 |
|
13-Jan-2012 |
Rusty Russell <rusty@rustcorp.com.au> |
module_param: make bool parameters really bool (drivers & misc) module_param(bool) used to counter-intuitively take an int. In fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy trick. It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version. Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
/drivers/infiniband/hw/ehca/ehca_main.c
|
69116f279a9eaf4c540934269342d9149538fc79 |
|
13-Jan-2012 |
Rusty Russell <rusty@rustcorp.com.au> |
module_param: avoid bool abuse, add bint for special cases. For historical reasons, we allow module_param(bool) to take an int (or an unsigned int). That's going away. A few drivers really want an int: they set it to -1 and a parameter will set it to 0 or 1. This sucks: reading them from sysfs will give 'Y' for both -1 and 1, but if we change it to an int, then the users might be broken (if they did "param" instead of "param=1"). Use a new 'bint' parser for them. (ntfs has a different problem: it needs an int for debug_msgs because it's also exposed via sysctl.) Cc: Steve Glendinning <steve.glendinning@smsc.com> Cc: Jean Delvare <khali@linux-fr.org> Cc: Guenter Roeck <guenter.roeck@ericsson.com> Cc: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Cc: Christoph Raisch <raisch@de.ibm.com> Cc: Roland Dreier <roland@kernel.org> Cc: Sean Hefty <sean.hefty@intel.com> Cc: Hal Rosenstock <hal.rosenstock@gmail.com> Cc: linux390@de.ibm.com Cc: Anton Altaparmakov <anton@tuxera.com> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.de> Cc: lm-sensors@lm-sensors.org Cc: linux-rdma@vger.kernel.org Cc: linux-s390@vger.kernel.org Cc: linux-ntfs-dev@lists.sourceforge.net Cc: alsa-devel@alsa-project.org Acked-by: Takashi Iwai <tiwai@suse.de> (For the sound part) Acked-by: Guenter Roeck <guenter.roeck@ericsson.com> (For the hwmon driver) Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
/drivers/infiniband/hw/ehca/ehca_main.c
|
58d4ea65b98f154f3326b038eecda32f90b46ea8 |
|
12-Aug-2010 |
Linus Torvalds <torvalds@linux-foundation.org> |
Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6 * 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6: mmc_spi: Fix unterminated of_match_table of/sparc: fix build regression from of_device changes of/device: Replace struct of_device with struct platform_device
|
2dc11581376829303b98eadb2de253bee065a56a |
|
06-Aug-2010 |
Grant Likely <grant.likely@secretlab.ca> |
of/device: Replace struct of_device with struct platform_device of_device is just an alias for platform_device, so remove it entirely. Also replace to_of_device() with to_platform_device() and update comment blocks. This patch was initially generated from the following semantic patch, and then edited by hand to pick up the bits that coccinelle didn't catch. @@ @@ -struct of_device +struct platform_device Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: David S. Miller <davem@davemloft.net>
/drivers/infiniband/hw/ehca/ehca_main.c
|
91fb0dd9cb71ab1a90ab1f48c34b935fdbca55b9 |
|
10-Jun-2010 |
Alexander Schmidt <alexs@linux.vnet.ibm.com> |
IB/ehca: Fix bitmask handling for lock_hcalls Fix reading hcall locking capability bit from device capabilities. Signed-off-by: Alexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
8e9815a0f8882aaa68645b001bb7538db8886802 |
|
25-May-2010 |
Linus Torvalds <torvalds@linux-foundation.org> |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: RDMA/nes: Fix incorrect unlock in nes_process_mac_intr() RDMA/nes: Async event for closed QP causes crash RDMA/nes: Have ethtool read hardware registers for rx/tx stats RDMA/cxgb4: Only insert sq qid in lookup table RDMA/cxgb4: Support IB_WR_READ_WITH_INV opcode RDMA/cxgb4: Set fence flag for inv-local-stag work requests RDMA/cxgb4: Update some HW limits RDMA/cxgb4: Don't limit fastreg page list depth RDMA/cxgb4: Return proper errors in fastreg mr/pbl allocation RDMA/cxgb4: Fix overflow bug in CQ arm RDMA/cxgb4: Optimize CQ overflow detection RDMA/cxgb4: CQ size must be IQ size - 2 RDMA/cxgb4: Register RDMA provider based on LLD state_change events RDMA/cxgb4: Detach from the LLD after unregistering RDMA device IB/ipath: Remove support for QLogic PCIe QLE devices IB/qib: Add new qib driver for QLogic PCIe InfiniBand adapters IB/mad: Make needlessly global mad_sendq_size/mad_recvq_size static IB/core: Allow device-specific per-port sysfs files mlx4_core: Clean up mlx4_alloc_icm() a bit mlx4_core: Fix possible chunk sg list overflow in mlx4_alloc_icm()
|
4018294b53d1dae026880e45f174c1cc63b5d435 |
|
14-Apr-2010 |
Grant Likely <grant.likely@secretlab.ca> |
of: Remove duplicate fields from of_platform_driver .name, .match_table and .owner are duplicated in both of_platform_driver and device_driver. This patch is a removes the extra copies from struct of_platform_driver and converts all users to the device_driver members. This patch is a pretty mechanical change. The usage model doesn't change and if any drivers have been missed, or if anything has been fixed up incorrectly, then it will fail with a compile time error, and the fixup will be trivial. This patch looks big and scary because it touches so many files, but it should be pretty safe. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Sean MacLennan <smaclennan@pikatech.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
9a6edb60ec10d86b1025a0cdad68fd89f1ddaf02 |
|
07-May-2010 |
Ralph Campbell <ralph.campbell@qlogic.com> |
IB/core: Allow device-specific per-port sysfs files Add a new parameter to ib_register_device() so that low-level device drivers can pass in a pointer to a callback function that will be called for each port that is registered in sysfs. This allows low-level device drivers to create files in /sys/class/infiniband/<hca>/ports/<N>/ without having to poke through the internals of the RDMA sysfs handling. There is no need for an unregister function since the kobject reference will go to zero when ib_unregister_device() is called. Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
61c7a080a5a061c976988fd4b844dfb468dda255 |
|
14-Apr-2010 |
Grant Likely <grant.likely@secretlab.ca> |
of: Always use 'struct device.of_node' to get device node pointer. The following structure elements duplicate the information in 'struct device.of_node' and so are being eliminated. This patch makes all readers of these elements use device.of_node instead. (struct of_device *)->node (struct dev_archdata *)->prom_node (sparc) (struct dev_archdata *)->of_node (powerpc & microblaze) Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
/drivers/infiniband/hw/ehca/ehca_main.c
|
9420269428b3dc80c98e52beac60a3976fbef7d2 |
|
09-Dec-2009 |
Alexander Schmidt <alexs@linux.vnet.ibm.com> |
IB/ehca: Rework destroy_eq() The ibmebus_free_irq() function, which might sleep, was called with interrupts disabled. To fix this, make sure that no interrupts are running by killing the interrupt tasklet. Also lock the shca_list_lock to protect against the poll_eqs_timer running concurrently. Signed-off-by: Alexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
a4dbd6740df0872cdf0a86841f75beec8381964d |
|
24-Jun-2009 |
David Brownell <dbrownell@users.sourceforge.net> |
driver model: constify attribute groups Let attribute group vectors be declared "const". We'd like to let most attribute metadata live in read-only sections... this is a start. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
/drivers/infiniband/hw/ehca/ehca_main.c
|
50d40b8e53fab58b0141a75f7448eb28f9e21338 |
|
06-Sep-2009 |
Alexander Schmidt <alexs@linux.vnet.ibm.com> |
IB/ehca: Make port autodetect mode the default Make port autodetect mode the default for the ehca driver. The autodetect code has been in the kernel for several releases now and has proved to be stable. Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
1d4d6da535be97b710e87a33c4828c97c36eee21 |
|
23-Jun-2009 |
Alexander Schmidt <alexs@linux.vnet.ibm.com> |
IB/ehca: Bump version number Increment version number for DMEM toleration. Signed-off-by: Alexander Schmidt <alexs@linux.vnet.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
0cf89dcdbc53f2b43e4ce7419b6ff47f4309c2eb |
|
23-Jun-2009 |
Hannes Hering <hering2@de.ibm.com> |
IB/ehca: Tolerate dynamic memory operations before driver load Implement toleration of dynamic memory operations and 16 GB gigantic pages, where "toleration" means that the driver can cope with dynamic memory operations that happen before the driver is loaded. While the ehca driver is loaded, dynamic memory operations are still prohibited by returning NOTIFY_BAD from the memory notifier. On module load the driver walks through available system memory, checks for available memory ranges and then registers the kernel internal memory region accordingly. The translation of address ranges is implemented via a 3-level busmap. Signed-off-by: Hannes Hering <hering2@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
f899c2ddd45f2515deb446e2b143e4a686a49aee |
|
04-May-2009 |
Greg Kroah-Hartman <gregkh@suse.de> |
infiniband: ehca: remove driver_data direct access of struct device In the near future, the driver core is going to not allow direct access to the driver_data pointer in struct device. Instead, the functions dev_get_drvdata() and dev_set_drvdata() should be used. These functions have been around since the beginning, so are backwards compatible with all older kernel versions. Cc: Sean Hefty <sean.hefty@intel.com> Cc: Roland Dreier <rolandd@cisco.com> Cc: Hal Rosenstock <hal.rosenstock@gmail.com> Cc: general@lists.openfabrics.org Cc: Christoph Raisch <raisch@de.ibm.com> Acked-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
/drivers/infiniband/hw/ehca/ehca_main.c
|
bde2cfaf8ff5511b4f434078554f89ff6cb677f2 |
|
14-May-2009 |
Stefan Roscher <ossrosch@linux.vnet.ibm.com> |
IB/ehca: Increment version number Signed-off-by: Stefan Roscher <stefan.roscher@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
3750f60557b68776eb749859ad68af70d1a01ad0 |
|
16-Jan-2009 |
Stephen Rothwell <sfr@canb.auug.org.au> |
IB/ehca: Fix printk format warnings from u64 type change Commit fe333321 ("powerpc: Change u64/s64 to a long long integer type") changed u64 from unsigned long to unsigned long long, which means that printk formats for printing u64 values should use "ll" instead of "l" to avoid warnings. Fix all the places affected by this in ehca. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
7ddccb234ce1039f89387e0cec9c29dccf6e3476 |
|
07-Jan-2009 |
Stephen Rothwell <sfr@canb.auug.org.au> |
IB/ehca: spin_lock_irqsave() takes an unsigned long The flags argument to spin_lock_irqsave() should really be unsigned long. This will also help prevent some warnings when we change u64 to unsigned long long. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
75c21ae9aa75b0452318d05f737ea838672137f5 |
|
02-Dec-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Fix locking for shca_list_lock shca_list_lock is taken from softirq context in ehca_poll_eqs, so we need to lock IRQ safe elsewhere. Found by lockdep. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
6b1f9d647e848060d34c3db408413989f1e460ba |
|
01-Dec-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Change misleading error message on memory hotplug The error message printed when the eHCA driver prevents memory hotplug is misleading -- the user might think that hot-removing the lhca, hotplugging memory, then hot-adding the lhca again will work, but it actually doesn't. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
263c24a2bbbaca75805ed231e8346d86410af9d0 |
|
23-Oct-2008 |
Stefan Roscher <ossrosch@linux.vnet.ibm.com> |
IB/ehca: Reject dynamic memory add/remove when ehca adapter is present Since the ehca device driver does not support dynamic memory add and remove operations, the driver must explicitly reject such requests in order to prevent unpredictable behaviors related to existing memory regions that cover all of memory being used by InfiniBand protocols in the kernel. The solution (for now at least) is to add a memory notifier to the ehca device driver and if a request for dynamic memory add or remove comes in, ehca will always reject it. The user can add or remove memory by hot-removing the ehca adapter, performing the memory operation, and then hot-adding the ehca adapter back. Signed-off-by: Stefan Roscher <stefan.roscher@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
19f4282149147b4a3e8c670373dc73ddd5d5facc |
|
23-Oct-2008 |
Stefan Roscher <ossrosch@linux.vnet.ibm.com> |
IB/ehca: Fix reported max number of QPs and CQs in systems with >1 adapter Because ehca adapters can differ in the maximum number of QPs and CQs we have to save the maximum number of these ressources per adapter and not globally per ehca driver. This fix introduces 2 new members to the shca structure to store the maximum value for QPs and CQs per adapter. The module parameters are now used as initial values for those variables. If a user selects an invalid number of CQs or QPs we don't print an error any longer, instead we will inform the user with a warning and set the values to the respective maximum supported by the HW. Signed-off-by: Stefan Roscher <stefan.roscher@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
038919f29682b00ea95506e959210fc72d1aaf64 |
|
15-Jul-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Make device table externally visible This gives ehca an autogenerated modalias and therefore enables automatic loading. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
d227fa7288adebe5ba37fa8e4a589c977d4e4a34 |
|
29-Apr-2008 |
Stefan Roscher <ossrosch@linux.vnet.ibm.com> |
IB/ehca: Allocate event queue size depending on max number of CQs and QPs If a lot of QPs fall into Error state at once and the EQ of the respective HCA is too small, it might overrun, causing the eHCA driver to stop processing completion events and calling the application's completion handlers, effectively causing traffic to stop. Fix this by limiting available QPs and CQs to a customizable max count, and determining EQ size based on these counts and a worst-case assumption. Signed-off-by: Stefan Roscher <stefan.roscher@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
14fb05b3497351fbeb514381bcd227d84e115bd9 |
|
23-Apr-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Bump version number to 0026 Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
0455e36d81db76f5f4acb68a820da43adfa7ccec |
|
23-Apr-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Make some module parameters bool, update descriptions Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
a7607c9b1112b498c3044c9e5bc68fdb4985f93e |
|
23-Apr-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Remove mr_largepage parameter Always enable large page support; didn't seem to cause problems for anyone. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
4da27d6d5b92c8fe4b3a3e5bcf42606d9e4a6fc8 |
|
23-Apr-2008 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Move high-volume debug output to higher debug levels Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
e8e91f6b4dc1179a70b0d21241b769c0ebfaa129 |
|
17-Apr-2008 |
Roland Dreier <rolandd@cisco.com> |
IB/ehca: Make symbols used only in a single source file static Allow the compiler to optimize better and generate smaller code: add/remove: 0/6 grow/shrink: 2/0 up/down: 1528/-1864 (-336) function old new delta .ehca_set_pagebuf 1344 2172 +828 .ehca_probe 2312 3012 +700 ehca_set_pagebuf_phys 24 - -24 ehca_set_pagebuf_fmr 24 - -24 ehca_init_device 24 - -24 .ehca_set_pagebuf_fmr 480 - -480 .ehca_set_pagebuf_phys 512 - -512 .ehca_init_device 800 - -800 Also this fixes warnings like: drivers/infiniband/hw/ehca/ehca_mrmw.c:2015:5: warning: symbol 'ehca_set_pagebuf_fmr' was not declared. Should it be static? Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
2b5e6b120e58d44cace68e6c7204b541a8b0b43f |
|
25-Jan-2008 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Add PMA support This patch enables ehca to redirect any PMA queries to the actual PMA QP. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Reviewed-by: Joachim Fenkes <fenkes@de.ibm.com> Reviewed-by: Christoph Raisch <raisch@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
bbdd267ef2796e96b461b8447b2026ce06e6ec4b |
|
17-Jan-2008 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Add "port connection autodetect mode" This patch enhances ehca with a capability to "autodetect" the ports being connected physically. In order to utilize that function the module option nr_ports must be set to -1 (default is 2 - two ports). This feature is experimental and will made the default later. More detail: If the user connects only one port to the switch, current code requires 1) port one to be connected and 2) module option nr_ports=1 to be given. If autodetect is enabled, ehca will not wait at creation of the GSI QP for the respective port to become active. Since firmware does not accept modify_qp() while the port is down at initialization, we need to cache all calls to modify_qp() for the SMI/GSI QP and just return a good return code. When a port is activated and we get a PORT_ACTIVE event, we replay the cached modify-qp() parms and re-trigger any posted recv WRs. Only then do we forward the PORT_ACTIVE event to registered clients. The result of this autodetect patch is that all ports will be accessible by the users. Depending on their respective cabling only those ports that are connected properly will become operable. If a user tries to modify a regular QP of a non-connected port, modify_qp() will fail. Furthermore, ibv_devinfo should show the port state accordingly. Note that this patch primarily improves the loading behaviour of ehca. If the cable is removed while the driver is operating and plugged in again, firmware will handle that properly by sending an appropriate async event. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
b8b50e353b85bc3c791dd2b99370ac300ebcd186 |
|
17-Jan-2008 |
Hoang-Nam Nguyen <hnguyen at de.ibm.com> |
IB/ehca: Define array to store SMI/GSI QPs Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
1a7d2dce4169ed42310926a5675fffd0986caa26 |
|
15-Oct-2007 |
Anton Blanchard <anton@samba.org> |
IB/ehca: Use round_jiffies() for EQ polling timer Use round_jiffies() to align ehca's 1-second timer with other timers and potentially save power by sleeping cores for longer. Signed-off-by: Anton Blanchard <anton@samba.org> Acked-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
23b9c1ab5baf368a32b7242bf110ef1f48700d04 |
|
05-Dec-2007 |
Greg Kroah-Hartman <gregkh@suse.de> |
Infiniband: make ipath driver use default driver groups. Make the ipath driver use the new driver functions so that it does not touch the sysfs portion of the driver structure. We also remove the redundant symlink from the device back to the driver, as it is already in the sysfs tree. Any userspace tools should be using the standard symlink, not some driver specific one. Cc: Roland Dreier <rdreier@cisco.com> Cc: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Cc: Arthur Jones <arthur.jones@qlogic.com> Cc: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
/drivers/infiniband/hw/ehca/ehca_main.c
|
3d758a4a48682639d3996968499913ecb1552e06 |
|
13-Dec-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Fix lock flag variable location, bump version number Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
4faf7757955239c1b259e7dab224d4638a99b456 |
|
10-Dec-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Serialize HCA-related hCalls if necessary Several pSeries firmware versions share a rare locking issue in the HCA-related hCalls. Check for a feature flag that indicates the issue being fixed and serialize all HCA hCalls if not. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
51aaa54eb9e9f01878aa5d62277fd156e458dfe1 |
|
02-Nov-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Fix static rate calculation The IPD (inter-packet delay) formula was a little off and assumed a fixed physical link rate; fix the formula and query the actual physical link rate, now that we can get it. Also, refactor the calculation into a common function ehca_calc_ipd() and use that instead of duplicating code. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
0b776eb5426752d4e53354ac89e3710d857e09a7 |
|
23-Oct-2007 |
Linus Torvalds <torvalds@woody.linux-foundation.org> |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: mlx4_core: Increase command timeout for INIT_HCA to 10 seconds IPoIB/cm: Use common CQ for CM send completions IB/uverbs: Fix checking of userspace object ownership IB/mlx4: Sanity check userspace send queue sizes IPoIB: Rewrite "if (!likely(...))" as "if (unlikely(!(...)))" IB/ehca: Enable large page MRs by default IB/ehca: Change meaning of hca_cap_mr_pgsize IB/ehca: Fix ehca_encode_hwpage_size() and alloc_fmr() IB/ehca: Fix masking error in {,re}reg_phys_mr() IB/ehca: Supply QP token for SRQ base QPs IPoIB: Use round_jiffies() for ah_reap_task RDMA/cma: Fix deadlock destroying listen requests RDMA/cma: Add locking around QP accesses IB/mthca: Avoid alignment traps when writing doorbells mlx4_core: Kill mlx4_write64_raw()
|
898eb71cb17644964c5895fb190e79e3d0c49679 |
|
18-Oct-2007 |
Joe Perches <joe@perches.com> |
Add missing newlines to some uses of dev_<level> messages Found these while looking at printk uses. Add missing newlines to dev_<level> uses Add missing KERN_<level> prefixes to multiline dev_<level>s Fixed a wierd->weird spelling typo Added a newline to a printk Signed-off-by: Joe Perches <joe@perches.com> Cc: "Luck, Tony" <tony.luck@intel.com> Cc: Jens Axboe <jens.axboe@oracle.com> Cc: Mark M. Hoffman <mhoffman@lightlink.com> Cc: Roland Dreier <rolandd@cisco.com> Cc: Tilman Schmidt <tilman@imap.cc> Cc: David Woodhouse <dwmw2@infradead.org> Cc: Jeff Garzik <jeff@garzik.org> Cc: Stephen Hemminger <shemminger@linux-foundation.org> Cc: Greg KH <greg@kroah.com> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: David Brownell <david-b@pacbell.net> Cc: James Smart <James.Smart@Emulex.Com> Cc: Andrew Vasquez <andrew.vasquez@qlogic.com> Cc: "Antonino A. Daplas" <adaplas@pol.net> Cc: Evgeniy Polyakov <johnpol@2ka.mipt.ru> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Jaroslav Kysela <perex@suse.cz> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
8da9ee9c1ec9036d8fad82f6ddbc4d15143cc6ca |
|
16-Oct-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Enable large page MRs by default Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
abc39d3672d8af4bf6c943faf85fa8877caccf7e |
|
16-Oct-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Change meaning of hca_cap_mr_pgsize ehca_shca.hca_cap_mr_pgsize now contains all supported page sizes ORed together. This makes some checks easier to code and understand, plus we can return this value verbatim in query_hca(), fixing a problem with SRP (reported by Anton Blanchard -- thanks!). Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
6b08f3ae8eec27a9e557468a48540bc64fd4a524 |
|
26-Sep-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
[POWERPC] ibmebus: Move to of_device and of_platform_driver, match eHCA and eHEA drivers Replace struct ibmebus_dev and struct ibmebus_driver with struct of_device and struct of_platform_driver, respectively. Match the external ibmebus interface and drivers using it. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Roland Dreier <rolandd@cisco.com> Acked-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
39089e77741a53874eb8a29e4516bbafcc29298a |
|
11-Sep-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Bump version number and change its format Nobody needed the SVNEHCA_ prefix anyway. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
e37221928bf685d63ba5319746eafe463d61e330 |
|
11-Sep-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Print return codes as signed decimal integers ...because -12 is easier to read than FFFFFFF4. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
5281a4b8a0c6bac0c070913ec25868faa06a3115 |
|
11-Sep-2007 |
Stefan Roscher <stefan.roscher@de.ibm.com> |
IB/ehca: Support more than 4k QPs for userspace and kernelspace Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
339e2640a9f403f7b7acb2ea67f3568b8ac3eebf |
|
29-Aug-2007 |
Anton Blanchard <anton@samba.org> |
IB/ehca: Export module parameters in sysfs At the moment the ehca module parameters are not exported in sysfs. Export them with 0444 permissions. Signed-off-by: Anton Blanchard <anton@samba.org> Acked-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
e2f81daf23efde23d8cac1fc253d41838f0347cf |
|
20-Jul-2007 |
Stefan Roscher <stefan.roscher at de.ibm.com> |
IB/ehca: Support small QP queues eHCA2 supports QP queues that can be as small as 512 bytes. This greatly reduces memory overhead for consumers that use lots of QPs with small queues (e.g. RDMA-only QPs). Apart from dealing with firmware, this code needs to manage bite-sized chunks of kernel pages, making sure that no kernel page is shared between different protection domains. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
51d2bfbddb33dc59786a3a41f7eeb59e30fa561c |
|
20-Jul-2007 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Move ehca2ib_return_code() out of line ehca2ib_return_code() is not used in any fast path, and making it non-inline saves ~1.5K of code. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
5bb7d9290cd23a55906e4fe7a7fedecf29468c81 |
|
20-Jul-2007 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Support large page MRs Add support for MR pages larger than 4K on eHCA2. This reduces firmware memory consumption. If enabled via the mr_largepage module parameter, the MR page size will be determined based on the MR length and the hardware capabilities -- if the MR is >= 16M, 16M pages are used, for example. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
20c2df83d25c6a95affe6157a4c9cac4cf5ffaac |
|
20-Jul-2007 |
Paul Mundt <lethal@linux-sh.org> |
mm: Remove slab destructors from kmem_cache_create(). Slab destructors were no longer supported after Christoph's c59def9f222d44bb7e2f0a559f2906191a0862d7 change. They've been BUGs for both slab and slub, and slob never supported them either. This rips out support for the dtor pointer from kmem_cache_create() completely and fixes up every single callsite in the kernel (there were about 224, not including the slab allocator definitions themselves, or the documentation references). Signed-off-by: Paul Mundt <lethal@linux-sh.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
2b94397adc68c2f0f851539884cc426e03444a26 |
|
12-Jul-2007 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Fix warnings issued by checkpatch.pl Run the existing ehca code through checkpatch.pl and clean up the worst of the coding style violations. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
fbb9318be4b6eba36482e1275729c5c3dfdf8156 |
|
12-Jul-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Fix HW level autodetection Autodetection was missing a few HW revisions, causing certain eHCA1 revisions to be treated like eHCA2. Fixed. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
26ed687fdd541c2542b79dcd75fb2c82eb36f189 |
|
09-Jul-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Change idr spinlocks into rwlocks This eliminates lock contention among IRQs as well as the need to disable IRQs around idr_find, because there are no IRQ writers. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
9844b71baa60270110eabaa9589d3260443d1a71 |
|
09-Jul-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Lock renaming, static initializers - Rename all spinlock flags to "flags", matching the vast majority of kernel code. - Move hcall_lock into the only file it's used in. - Replaced spin_lock_init() and friends with static initializers for global variables. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
a6a12947fbf4a1782535468d756b0d44babf9760 |
|
09-Jul-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: add Shared Receive Queue support Support SRQs on eHCA2. Since an SRQ is a QP for eHCA2, a lot of code (structures, create, destroy, post_recv) can be shared between QP and SRQ. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
91f13aa3fc22e357b494c5b8270e94543870928d |
|
09-Jul-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: HW level, HW caps and MTU autodetection In preparation for support of new eHCA2 features, change adapter probing: - Hardware level is changed to encode major and minor chip version - Hardware capabilities are queried from the firmware - The maximum MTU is queried from the firmware instead of assuming a fixed value Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
b8a3ba551369982180917a999d32fcedbba34115 |
|
09-Jul-2007 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Change scaling_code parameter description to match default value Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
4e430dcb7b132a4076e533a9d69907acecbe71be |
|
09-May-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Disable scaling code by default, bump version number - Scaling code is still considered experimental, so disable it by default - Increase version to SVNEHCA_0023 Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
bba9b6013e604fadb298191c058149acf1cdfced |
|
09-May-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Beautify sysfs attribute code and fix compiler warnings eHCA's sysfs attributes are now being created via sysfs_create_group(), making the process neatly table-driven. The return value is checked, thus fixing a few compiler warnings. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
5d88278e3bdb6f2e4ed43306659e930ecd715f0c |
|
09-May-2007 |
Stefan Roscher <stefan.roscher@de.ibm.com> |
IB/ehca: Serialize hypervisor calls in ehca_register_mr() Some pSeries hypervisor versions show a race condition in the allocate MR hCall. Serialize this call per adapter to circumvent this problem. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
02bbc0f09c90cefdb2837605c96a66c5ce4ba2e1 |
|
08-May-2007 |
Paul Mackerras <paulus@samba.org> |
Merge branch 'linux-2.6'
|
972d45fb43f0f0793fa275c4a22998106760cd61 |
|
07-May-2007 |
Linus Torvalds <torvalds@woody.linux-foundation.org> |
Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IPoIB: Convert to NAPI IB: Return "maybe missed event" hint from ib_req_notify_cq() IB: Add CQ comp_vector support IB/ipath: Fix a race condition when generating ACKs IB/ipath: Fix two more spin lock problems IB/fmr_pool: Add prefix to all printks IB/srp: Set proc_name IB/srp: Add orig_dgid sysfs attribute to scsi_host IPoIB/cm: Don't crash if remote side uses one QP for both directions RDMA/cxgb3: Support for new abort logic RDMA/cxgb3: Initialize cpu_idx field in cpl_close_listserv_req message RDMA/cxgb3: Fail qp creation if the requested max_inline is too large RDMA/cxgb3: Fix TERM codes IPoIB/cm: Fix error handling in ipoib_cm_dev_open() IB/ipath: Don't corrupt pending mmap list when unmapped objects are freed IB/mthca: Work around kernel QP starvation IB/ipath: Don't put QP in timeout queue if waiting to send IB/ipath: Don't call spin_lock_irq() from interrupt context
|
f4fd0b224d60044d2da5ca02f8f2b5150c1d8731 |
|
03-May-2007 |
Michael S. Tsirkin <mst@dev.mellanox.co.il> |
IB: Add CQ comp_vector support Add a num_comp_vectors member to struct ib_device and extend ib_create_cq() to pass in a comp_vector parameter -- this parallels the userspace libibverbs API. Update all hardware drivers to set num_comp_vectors to 1 and have all ULPs pass 0 for the comp_vector value. Pass the value of num_comp_vectors to userspace rather than hard-coding a value of 1. We want multiple CQ event vector support (via MSI-X or similar for adapters that can generate multiple interrupts), but it's not clear how many vectors we want, or how we want to deal with policy issues such as how to decide which vector to use or how to set up interrupt affinity. This patch is useful for experimenting, since no core changes will be necessary when updating a driver to support multiple vectors, and we know that we want to make at least these changes anyway. Signed-off-by: Michael S. Tsirkin <mst@dev.mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
40cd3a4564ed6b7bc0279430120ca0e9b83cf486 |
|
01-May-2007 |
Stephen Rothwell <sfr@canb.auug.org.au> |
[POWERPC] Rename get_property to of_get_property: drivers These are all the remaining instances of get_property. Simple rename of get_property to of_get_property. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
49e1900d4cc2e7bcecb681fe60f0990bec2dcce8 |
|
29-Apr-2007 |
Paul Mackerras <paulus@samba.org> |
Merge branch 'linux-2.6' into for-2.6.22
|
a48141db68e4b9143759435badcc1a49d9022db4 |
|
26-Apr-2007 |
Paul Mackerras <paulus@samba.org> |
Revert "[POWERPC] Rename get_property to of_get_property: drivers" This reverts commit d05c7a80cf39ae7d0f8d0c3e47c93d51fcd393d3, which included changes which should go via other subsystem maintainers.
/drivers/infiniband/hw/ehca/ehca_main.c
|
c4ed790dfd4b2182c76e0fcd79d4aa85ab02eccf |
|
24-Apr-2007 |
Joachim Fenkes <fenkes@de.ibm.com> |
IB/ehca: Implement modify_port Add "Modify Port" verb support to eHCA driver. The IB communication manager needs this to set the IsCM port capability bit when initializing. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
d05c7a80cf39ae7d0f8d0c3e47c93d51fcd393d3 |
|
03-Apr-2007 |
Stephen Rothwell <sfr@canb.auug.org.au> |
[POWERPC] Rename get_property to of_get_property: drivers Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
a7edd0e676d51145ae634a2acf7a447e319200fa |
|
03-Apr-2007 |
Stephen Rothwell <sfr@canb.auug.org.au> |
[POWERPC] get_property returns const This just tidies up some of the remains. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
31726798bd8fbef6244b28cf962f4a4c45793dea |
|
28-Feb-2007 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Fix sync between completion handler and destroy cq This patch fixes two issues reported by Roland Dreier and Christoph Hellwig: - Mismatched sync/locking between completion handler and destroy cq We introduced a counter nr_events per cq to track number of irq events seen. This counter is incremented when an event queue entry is seen and decremented after completion handler has been called regardless if scaling code is active or not. Note that nr_callbacks tracks number of events assigned to a cpu and both counters can potentially diverge. The sync between running completion handler and destroy cq is done by using the global spin lock ehca_cq_idr_lock. - Replace yield by wait_event on the counter above to become zero. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
4fd3006032446be2b331dd482e34c6a9e644a5b8 |
|
15-Feb-2007 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Allow en/disabling scaling code via module parameter Allow users to en/disable scaling code when loading ib_ehca module, rather than requiring the module to be rebuilt to change the setting. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
78d8d5f9ef8d6179e92b94481cfdfc45d396992f |
|
15-Feb-2007 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Rework irq handler Rework ehca interrupt handling to avoid/reduce missed irq events. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
4c34bdf58c0a3b305ebd9b5e74011ca1fd6d964d |
|
24-Jan-2007 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Remove use of do_mmap() This patch removes do_mmap() from ehca: - Call remap_pfn_range() for hardware register block - Use vm_insert_page() to register memory allocated for completion queues and queue pairs - The actual mmap() call/trigger is now controlled by user space, ie. libehca Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
f2d9136133de257abbd97fec6f624d3a73d1e1fd |
|
09-Jan-2007 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Use proper GFP_ flags for get_zeroed_page() Here is a patch for ehca to use proper flag, ie. GFP_ATOMIC resp. GFP_KERNEL, when calling get_zeroed_page() to prevent "Bug: scheduling while atomic...". This error does not cause a kernel panic but makes ipoib un-usable afterwards. It is reproducible on 2.6.20-rc4 if one does ifconfig down during a flood ping test. I have not observed this error in earlier releases incl. 2.6.20-rc1. This error occurs when a qp event/irq is received and ehca event handler allocates a control block/page to obtain HCA error data block. Use of GFP_ATOMIC when in interrupt context prevents this issue. Signed-off-by Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
e94b1766097d53e6f3ccfb36c8baa562ffeda3fc |
|
07-Dec-2006 |
Christoph Lameter <clameter@sgi.com> |
[PATCH] slab: remove SLAB_KERNEL SLAB_KERNEL is an alias of GFP_KERNEL. Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
/drivers/infiniband/hw/ehca/ehca_main.c
|
2771e9ed4702e46c3f4c305eb2e047c251c2ad2b |
|
20-Nov-2006 |
Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> |
IB/ehca: Use WQE offset instead of WQE addr for pending work reqs This is a patch for ehca to fix a bug in prepare_sqe_to_rts(), which used WQE address to iterate pending work requests. This might cause an access violation since the queue pages can not be assumed to follow each other consecutively. Thus, this patch introduces a few queue functions to determine WQE offset based on its address and uses WQE offset to iterate the pending work requests. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
7e28db5d8ff63b1cabc221c5cb84a5f45752f1c2 |
|
07-Nov-2006 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Assure 4K alignment for firmware control blocks Assure 4K alignment for firmware control blocks in 64K page mode, because kzalloc()'s result address might not be 4K aligned if 64K pages are enabled. Thus, we introduce wrappers called ehca_{alloc,free}_fw_ctrlblock(), which use a slab cache for objects with 4K length and 4K alignment in order to alloc/free firmware control blocks in 64K page mode. In 4K page mode those wrappers just are defines of get_zeroed_page() and free_page(). Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
0f248d9cde673a481eb3182909b54d07e9d58f72 |
|
02-Oct-2006 |
Hoang-Nam Nguyen <hnguyen@de.ibm.com> |
IB/ehca: Fix device registration Move the call to ib_register_device() later, since a device should not be registered until it is completely read to be used. This fixes crashes that occur if an upper-layer driver such as IPoIB is loaded before the ehca module. Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
07ebafbaaa72aa6a35472879008f5a1d1d469a0c |
|
03-Aug-2006 |
Tom Tucker <tom@opengridcomputing.com> |
RDMA: iWARP Core Changes. Modifications to the existing rdma header files, core files, drivers, and ulp files to support iWARP, including: - Hook iWARP CM into the build system and use it in rdma_cm. - Convert enum ib_node_type to enum rdma_node_type, which includes the possibility of RDMA_NODE_RNIC, and update everything for this. Signed-off-by: Tom Tucker <tom@opengridcomputing.com> Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
/drivers/infiniband/hw/ehca/ehca_main.c
|
fab97220c9e409a98b1956ba677ddd2dd43b0b95 |
|
23-Sep-2006 |
Heiko J Schick <schickhj.ibm.com> |
IB/ehca: Add driver for IBM eHCA InfiniBand adapters 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>
/drivers/infiniband/hw/ehca/ehca_main.c
|