Re: [PATCH 0/5] Input: serio_raw - add monitor/replay debugging interface
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2012-04-21 06:21:38
Also in:
linux-input
On Tue, Feb 14, 2012 at 11:18:38AM +0800, Daniel Kurtz wrote:
On Wed, Feb 8, 2012 at 11:24 AM, Che-Liang Chiou [off-list ref] wrote:quoted
The serio_raw driver is designed to provide "raw access" to mice, keyboards etc; thus, a driver accessing serio_raw may live entirely in userland. However, serio_raw lacks testability. It is practically impossible to do regression tests on changes to a serio_raw -based userland driver. On the other hand, the kernel's input subsystem has good testability support. With the help of tools like utouch-evemu, we may capture and replay input events for evdev drivers in regression tests. This patchset contains extensions to the serio_raw driver which add debugfs entries for monitoring and replaying byte sequence between a userland driver and device. These byte sequences can be used in regression tests of the userland driver. This patchset closes the gap between serio_raw and the input subsystem regarding testability. This patchset is successfully applied on kernel version 3.3-rc2. Che-Liang Chiou (5): Input: serio_raw - return proper result when serio_raw_read fails Input: serio_raw - extract queue interface Input: serio_raw - factor out common pattern of write Input: serio_raw - add debugfs interface Input: serio_raw - implement debugfs interfaceFor patches 3-5: Reviewed-by: Daniel Kurtz <redacted> For patch 1 (and its implication on queue_read() in patch 2, I'd prefer to hear feedback from the list.
I have already taken the patch 1, but I am unsure why we need kernel support for the monitor and replay. It seems you should only need a userspace program that would sit between the driver being tested and serio_raw misc device and pipe data back and forth, optionally saving it for subsequent replay. Thanks. -- Dmitry