aboutsummaryrefslogtreecommitdiff
path: root/kernel/rcutiny.c
diff options
context:
space:
mode:
authorIestyn C. Elfick <isedev@gmail.com>2013-03-20 14:02:31 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-04-05 10:16:36 -0700
commit1c9c0901afba44cf1353505b72e146e7f87a54b6 (patch)
tree3cf729f26842e7a84fd521a89f63d32d5f10181b /kernel/rcutiny.c
parentb76c1eabd474cd44937fc60a26be2b926a366e55 (diff)
b43: A fix for DMA transmission sequence errors
commit b251412db99ccd4495ce372fec7daee27bf06923 upstream. Intermittently, b43 will report "Out of order TX status report on DMA ring". When this happens, the driver must be reset before communication can resume. The cause of the problem is believed to be an error in the closed-source firmware; however, all versions of the firmware are affected. This change uses the observation that the expected status is always 2 less than the observed value, and supplies a fake status report to skip one header/data pair. Not all devices suffer from this problem, but it can occur several times per second under heavy load. As each occurence kills the unmodified driver, this patch makes if possible for the affected devices to function. The patch logs only the first instance of the reset operation to prevent spamming the logs. Tested-by: Chris Vine <chris@cvine.freeserve.co.uk> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'kernel/rcutiny.c')
0 files changed, 0 insertions, 0 deletions