android_kernel_xiaomi_sm7250/drivers/infiniband/hw/mthca
Arthur Kepner 1f5c23e2c1 IB/mthca: Use mmiowb after doorbell ring
We discovered a problem when running IPoIB applications on multiple
CPUs on an Altix system. Many messages such as:

ib_mthca 0002:01:00.0: SQ 000014 full (19941644 head, 19941707 tail, 64 max, 0 nreq)

appear in syslog, and the driver wedges up.

Apparently this is because writes to the doorbells from different CPUs
reach the device out of order. The following patch adds mmiowb() calls
after doorbell rings to ensure the doorbell writes are ordered.

Signed-off-by: Arthur Kepner <akepner@sgi.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
2006-10-16 20:22:35 -07:00
..
Kconfig IB/mthca: Always build debugging code unless CONFIG_EMBEDDED=y 2006-04-02 14:39:20 -07:00
Makefile IB/mthca: Always build debugging code unless CONFIG_EMBEDDED=y 2006-04-02 14:39:20 -07:00
mthca_allocator.c IB/mthca: Use IRQ safe locks to protect allocation bitmaps 2006-08-31 17:25:56 -07:00
mthca_av.c IB/mthca: Fix default static rate returned for Tavor in AV 2006-09-22 15:22:40 -07:00
mthca_catas.c IB/mthca: Recover from catastrophic errors 2006-09-22 15:22:54 -07:00
mthca_cmd.c IB/mthca: Include the header we really want 2006-09-22 15:17:20 -07:00
mthca_cmd.h IB: simplify static rate encoding 2006-04-10 09:43:47 -07:00
mthca_config_reg.h [PATCH] IB: Add copyright notices 2005-08-26 20:37:35 -07:00
mthca_cq.c IB/mthca: Use mmiowb after doorbell ring 2006-10-16 20:22:35 -07:00
mthca_dev.h IB/mthca: Recover from catastrophic errors 2006-09-22 15:22:54 -07:00
mthca_doorbell.h [PATCH] IB: sparse endianness cleanup 2005-08-26 20:37:35 -07:00
mthca_eq.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
mthca_mad.c IB/mthca: Fix lid used for sending traps 2006-09-22 15:17:17 -07:00
mthca_main.c IB/mthca: Recover from catastrophic errors 2006-09-22 15:22:54 -07:00
mthca_mcg.c IB/mthca: Fix section mismatch problems 2006-03-29 09:36:46 -08:00
mthca_memfree.c IB/mthca: Use an enum for HCA page size 2006-03-20 10:08:19 -08:00
mthca_memfree.h IB/mthca: Use an enum for HCA page size 2006-03-20 10:08:19 -08:00
mthca_mr.c IB/mthca: FMR ioremap fix 2006-05-10 15:16:57 -07:00
mthca_pd.c IB/mthca: Fix section mismatch problems 2006-03-29 09:36:46 -08:00
mthca_profile.c IB/mthca: Optimize large messages on Sinai HCAs 2006-03-20 10:08:22 -08:00
mthca_profile.h [PATCH] IB/mthca: Add SRQ implementation 2005-08-26 20:37:37 -07:00
mthca_provider.c IB/mthca: Query port fix 2006-10-10 12:50:36 -07:00
mthca_provider.h IB/mthca: Fix potential AB-BA deadlock with CQ locks 2006-08-11 08:56:57 -07:00
mthca_qp.c IB/mthca: Use mmiowb after doorbell ring 2006-10-16 20:22:35 -07:00
mthca_reset.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
mthca_srq.c IB/mthca: Use mmiowb after doorbell ring 2006-10-16 20:22:35 -07:00
mthca_uar.c IB/mthca: Don't use privileged UAR for kernel access 2006-09-22 15:17:18 -07:00
mthca_user.h IB/mthca: Add device-specific support for resizing CQs 2006-03-20 10:08:08 -08:00
mthca_wqe.h IB/mthca: fix posting of send lists of length >= 255 on mem-free HCAs 2005-11-29 11:33:46 -08:00