From: Sathya Perla Date: Mon, 17 Dec 2012 19:38:51 +0000 (+0000) Subject: be2net: fix wrong frag_idx reported by RX CQ X-Git-Tag: v3.8-rc1~40^2~19 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d23e946cb67e5011226bcbd1597a632ac7a48c35;p=pandora-kernel.git be2net: fix wrong frag_idx reported by RX CQ The RX CQ can report completions with invalid frag_idx when the RXQ that was *previously* using it, was not cleaned up properly. This hits a BUG_ON() in be2net. When completion coalescing is enabled on a CQ, an explicit CQ-notify (with rearm) is needed for each compl, to flush partially coalesced CQ entries that are pending DMA. In be_close(), this fix now notifies CQ for each compl, waits explicitly for the flush compl to arrive and complains if it doesn't arrive. Also renaming be_crit_error() to be_hw_error() as it's the more appropriate name and to convey that we don't wait for the flush compl only when a HW error has occurred. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller --- Reading git-diff-tree failed