Hi Here are patches to remove finish_tasklet from sdhci. The first 3 patches are preparation. The next patch alleviates the performance loss, and the final patch removes the tasklet. Adrian Hunter (5): mmc: sdhci: Reorganize sdhci_finish_mrq() and __sdhci_finish_mrq() mmc: sdhci: Move timer and has_requests functions mmc: sdhci: Move some processing to __sdhci_finish_mrq() mmc: sdhci: Call mmc_request_done() from IRQ handler if possible mmc: sdhci: Remove finish_tasklet drivers/mmc/host/sdhci.c | 159 +++++++++++++++++++++++++++++------------------ drivers/mmc/host/sdhci.h | 3 +- 2 files changed, 101 insertions(+), 61 deletions(-) Regards Adrian