From: Ben Hutchings Date: Sun, 18 May 2014 23:56:22 +0000 (+0100) Subject: Staging: speakup: Move pasting into a work item X-Git-Tag: omap-for-v3.16/fixes-against-rc1~112^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d7500135802ca55b3f4e01a16544e8b34082f8c3;p=pandora-kernel.git Staging: speakup: Move pasting into a work item Input is handled in softirq context, but when pasting we may need to sleep. speakup_paste_selection() currently tries to bodge this by busy-waiting if in_atomic(), but that doesn't help because the ldisc may also sleep. For bonus breakage, speakup_paste_selection() changes the state of current, even though it's not running in process context. Move it into a work item and make sure to cancel it on exit. References: https://bugs.debian.org/735202 References: https://bugs.debian.org/744015 Reported-by: Paul Gevers Reported-and-tested-by: Jarek Czekalski Signed-off-by: Ben Hutchings Cc: stable@vger.kernel.org Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed