tcmu: Fix module removal due to stuck unmap_thread thread again
Because the unmap code just after the schdule() returned may take a long time and if the kthread_stop() is fired just when in this routine, the module removal maybe stuck too. Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com> Reviewed-by: Mike Christie <mchristi@redhat.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
1d6ef27659
commit
07932a023a
1 changed files with 1 additions and 1 deletions
|
@ -1707,7 +1707,7 @@ static int unmap_thread_fn(void *data)
|
||||||
struct page *page;
|
struct page *page;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
while (1) {
|
while (!kthread_should_stop()) {
|
||||||
DEFINE_WAIT(__wait);
|
DEFINE_WAIT(__wait);
|
||||||
|
|
||||||
prepare_to_wait(&unmap_wait, &__wait, TASK_INTERRUPTIBLE);
|
prepare_to_wait(&unmap_wait, &__wait, TASK_INTERRUPTIBLE);
|
||||||
|
|
Loading…
Reference in a new issue