From: Vasily Khoruzhick Date: Fri, 21 Jan 2011 20:44:48 +0000 (+0200) Subject: libertas_spi: Use workqueue in hw_host_to_card X-Git-Tag: v2.6.39-rc1~468^2~403^2~61 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=16f775befc1ccf67e6b223c4d9bb17ac3502ab2c;p=pandora-kernel.git libertas_spi: Use workqueue in hw_host_to_card Use workqueue to perform SPI xfers, it's necessary to fix nasty "BUG: scheduling while atomic", because spu_write() calls spi_sync() and spi_sync() may sleep, but hw_host_to_card() callback can be called from atomic context. Remove kthread completely, workqueue now does its job. Restore intermediate buffers which were removed in commit 86c34fe89e9cad9e1ba4d1a8bbf98259035f4caf that introduced mentioned bug. Signed-off-by: Vasily Khoruzhick Signed-off-by: John W. Linville --- Reading git-diff-tree failed