The patch titled Subject: rtsx_usb_ms: Use msleep_interruptible() in polling loop has been added to the -mm tree. Its filename is rtsx_usb_ms-use-msleep_interruptible-in-polling-loop.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/rtsx_usb_ms-use-msleep_interruptible-in-polling-loop.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/rtsx_usb_ms-use-msleep_interruptible-in-polling-loop.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Ben Hutchings <ben@xxxxxxxxxxxxxxx> Subject: rtsx_usb_ms: Use msleep_interruptible() in polling loop rtsx_usb_ms creates a task that mostly sleeps, but tasks in uninterruptible sleep still contribute to the load average (for bug-compatibility with Unix). A load average of ~1 on a system that should be idle is somewhat alarming. Change the sleep to be interruptible, but still ignore signals. A better fix might be to replace this loop with a delayed work item. References: https://bugs.debian.org/765717 Link: http://lkml.kernel.org/r/7afcd6e57d09772699ac37b59db98617@xxxxxxxxxxxxxx Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx> Signed-off-by: Oleksandr Natalenko <oleksandr@xxxxxxxxxxxxxx> Cc: Greg KH <greg@xxxxxxxxx> Cc: Oleg Nesterov <oleg@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- drivers/memstick/host/rtsx_usb_ms.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff -puN drivers/memstick/host/rtsx_usb_ms.c~rtsx_usb_ms-use-msleep_interruptible-in-polling-loop drivers/memstick/host/rtsx_usb_ms.c --- a/drivers/memstick/host/rtsx_usb_ms.c~rtsx_usb_ms-use-msleep_interruptible-in-polling-loop +++ a/drivers/memstick/host/rtsx_usb_ms.c @@ -706,7 +706,8 @@ poll_again: if (host->eject) break; - msleep(1000); + if (msleep_interruptible(1000)) + flush_signals(current); } complete(&host->detect_ms_exit); _ Patches currently in -mm which might be from ben@xxxxxxxxxxxxxxx are rtsx_usb_ms-use-msleep_interruptible-in-polling-loop.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html