]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: core: Further fix thread wake-up
authorAdrian Hunter <adrian.hunter@intel.com>
Mon, 19 Dec 2016 13:57:34 +0000 (15:57 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 20 Dec 2016 10:55:04 +0000 (11:55 +0100)
commit035d74f58af7524cab1f40d839cd20dfb001679d
tree5e4b81ba98954f771be8d02f7aa1f648b467d314
parent9caeabe7751427f00d9e221124053b5bb9847768
mmc: core: Further fix thread wake-up

Commit b79a4c689922 ("mmc: queue: Fix queue thread wake-up") did not go far
enough. mmc_wait_for_data_req_done() still contains some problems and can
be further simplified.  First it should not touch
context_info->is_waiting_last_req because that is a wake-up control used by
the owner of the context. Secondly, it should always return when one of its
wake-up conditions is met because, again, that is contolled by the owner of
the context.

While the current block driver does not have an issue, these problems were
exposed during testing of the Software Command Queue patches.

Fixes: b79a4c689922 ("mmc: queue: Fix queue thread wake-up")
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Tested-by: Harjani Ritesh <riteshh@codeaurora.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/core/core.c