diff options
author | Sven Eckelmann <[email protected]> | 2013-11-17 20:38:21 +0100 |
---|---|---|
committer | Jiri Kosina <[email protected]> | 2013-11-19 09:37:45 +0100 |
commit | 9f323b681139d99beb456aff08cf339b29f3c78d (patch) | |
tree | 170dfa3046d5dcddf3f5bd7ce490f8ed0b990712 /tools/perf/scripts/python/Perf-Trace-Util/lib/Perf/Trace/Util.py | |
parent | e0da5c9a49b927d9e5f62b21a7abc283e99022e2 (diff) |
HID: sony: Send FF commands in non-atomic context
The ff_memless has a timer running which gets run in an atomic context and
calls the play_effect callback. The callback function for sony uses the
hid_output_raw_report (overwritten by sixaxis_usb_output_raw_report) function
to handle differences in the control message format. It is not safe for an
atomic context because it may sleep later in usb_start_wait_urb.
This "scheduling while atomic" can cause the system to lock up. A workaround is
to make the force feedback state update using work_queues and use the
play_effect function only to enqueue the work item.
Reported-by: Simon Wood <[email protected]>
Reported-by: David Herrmann <[email protected]>
Signed-off-by: Sven Eckelmann <[email protected]>
Signed-off-by: Simon Wood <[email protected]>
Signed-off-by: Jiri Kosina <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/Perf-Trace-Util/lib/Perf/Trace/Util.py')
0 files changed, 0 insertions, 0 deletions