android_kernel_xiaomi_sm8350/drivers
Michael S. Tsirkin 92898522e3 IB/mthca: prevent event queue overrun
I am seeing EQ overruns in SDP stress tests: if the CQ completion
handler arms a CQ, this could generate more EQEs, so that EQ will
never get empty and consumer index will never get updated.

This is similiar to what we have with command interface:
		/*
		 * cmd_event() may add more commands.
		 * The card will think the queue has overflowed if
		 * we don't tell it we've been processing events.
		 */
However, for completion events, we *don't* want to update the consumer
index on each event. So, perform EQ doorbell coalescing: allocate EQs
with some spare EQEs, and update once we run out of them.

The value 0x80 was selected to avoid any performance impact.

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
2006-01-09 14:04:40 -08:00
..
acorn [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
acpi [PATCH] tpm: add bios measurement log 2006-01-08 20:13:55 -08:00
amba [ARM] Move AMBA bus code to drivers/amba/ 2006-01-07 14:54:15 +00:00
atm [PATCH] frv: fix uninitialised variable in atm nicstar driver 2006-01-08 20:13:38 -08:00
base [PATCH] memhotplug: register_memory should be global 2006-01-06 08:33:22 -08:00
block [PATCH] cciss: avoid defining useless MAJOR_NR macro 2006-01-08 20:14:09 -08:00
bluetooth [PATCH] pcmcia: add some IDs for ide-cs and dtl1_cs 2006-01-06 00:31:07 +01:00
cdrom [BLOCK] add @uptodate to end_that_request_last() and @error to rq_end_io_fn() 2006-01-06 09:49:03 +01:00
char [PATCH] vr41xx: section tags fix 2006-01-08 20:14:10 -08:00
connector [PATCH] drivers/connector/cn_proc.c typos 2006-01-08 20:13:58 -08:00
cpufreq
crypto
dio
eisa
fc4 [SPARC]: introduce a SPARC Kconfig symbol 2005-12-22 23:09:54 -08:00
firmware [PATCH] dell_rbu: NULL noise removal 2005-12-15 10:04:30 -08:00
hwmon [PATCH] hwmon: it87 use u8 for vrm 2006-01-05 22:16:26 -08:00
i2c [PATCH] IRQ type flags 2006-01-08 20:13:46 -08:00
ide [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
ieee1394 [PATCH] don't freeze firewire on suspend. 2006-01-06 08:33:43 -08:00
infiniband IB/mthca: prevent event queue overrun 2006-01-09 14:04:40 -08:00
input [PATCH] IRQ type flags 2006-01-08 20:13:46 -08:00
isdn [PATCH] drivers/isdn/hardware/eicon/os_4bri.c: correct the xdiLoadFile() signature 2006-01-08 20:14:09 -08:00
macintosh [PATCH] fix more missing includes 2006-01-08 20:13:45 -08:00
mca
md [PATCH] remove gcc-2 checks 2006-01-08 20:14:02 -08:00
media [PATCH] remove gcc-2 checks 2006-01-08 20:14:02 -08:00
message [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
mfd [PATCH] drivers/mfd: header included twice 2006-01-08 20:13:59 -08:00
misc Input: ibmasm - convert to dynamic input_dev allocation 2006-01-07 11:35:05 -05:00
mmc [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
mtd [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
net [PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1 2006-01-08 20:14:07 -08:00
nubus
oprofile [PATCH] oprofile: Use vmalloc_node() in alloc_cpu_buffers() 2006-01-08 20:13:56 -08:00
parisc
parport [PATCH] parport_pc: arm build fix 2006-01-08 20:14:06 -08:00
pci [PATCH] fix more missing includes 2006-01-08 20:13:45 -08:00
pcmcia Merge with Linus' kernel. 2006-01-07 14:40:05 +00:00
pnp [PATCH] x86: Fixed pnp bios limits 2006-01-06 08:33:35 -08:00
rapidio [PATCH] fix more missing includes 2006-01-08 20:13:45 -08:00
s390 [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
sbus [PATCH] sbus/char/uctrl: missing prototypes and NULL noise removal 2005-12-15 10:01:28 -08:00
scsi [PATCH] Add block_device_operations.getgeo block device method 2006-01-08 20:13:54 -08:00
serial Merge master.kernel.org:/home/rmk/linux-2.6-arm 2006-01-07 10:45:22 -08:00
sh
sn
tc
telephony [PATCH] pcmcia: unify attach, EVENT_CARD_INSERTION handlers into one probe callback 2006-01-06 00:03:24 +01:00
usb [PATCH] shrink dentry struct 2006-01-08 20:13:58 -08:00
video [PATCH] vgacon: Workaround for resize bug in some chipsets 2006-01-08 20:13:51 -08:00
w1 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6 2006-01-04 18:44:12 -08:00
zorro
Kconfig
Makefile [ARM] Move AMBA bus code to drivers/amba/ 2006-01-07 14:54:15 +00:00