aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/memstick/core/memstick.c
diff options
context:
space:
mode:
authorAlex Dubov <oakad@yahoo.com>2008-07-25 22:45:02 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-26 15:00:04 -0400
commitf1d82698029b92a88f5500b99f66514b6dee2bc3 (patch)
treeeaedb613a05e1471fbeca212b3b1229ab252627d /drivers/memstick/core/memstick.c
parent17017d8d2c005734d7088d8281ce2daab8fcb097 (diff)
memstick: use fully asynchronous request processing
Instead of using a separate thread to pump requests from block layer queue to memstick, do so inline, utilizing the callback design of the memstick. [akpm@linux-foundation.org: fix warnings] Signed-off-by: Alex Dubov <oakad@yahoo.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/memstick/core/memstick.c')
-rw-r--r--drivers/memstick/core/memstick.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/memstick/core/memstick.c b/drivers/memstick/core/memstick.c
index 7162f772bbf..a38005008a2 100644
--- a/drivers/memstick/core/memstick.c
+++ b/drivers/memstick/core/memstick.c
@@ -249,8 +249,11 @@ EXPORT_SYMBOL(memstick_next_req);
249 */ 249 */
250void memstick_new_req(struct memstick_host *host) 250void memstick_new_req(struct memstick_host *host)
251{ 251{
252 host->retries = cmd_retries; 252 if (host->card) {
253 host->request(host); 253 host->retries = cmd_retries;
254 INIT_COMPLETION(host->card->mrq_complete);
255 host->request(host);
256 }
254} 257}
255EXPORT_SYMBOL(memstick_new_req); 258EXPORT_SYMBOL(memstick_new_req);
256 259