Dmitry, Please find enclosed the third version of the evdev buffer patches. This version has one more patch; the locking mechanism has been broken out into its own file, buflock.h, adding a fair amount of documentation. The mechanism has been moderately tested, showing graceful dropping of packets as the buffer size gets smaller and the number of simultaneous readers gets larger. In the second patch, the per-client buffer is replaced by the buflock reader, and the spinlock name is changed to reflect the reduced area it covers. The third patch only has trivial changes, and the fourth patch is unchanged, but included for completeness. Cheers, Henrik --- Henrik Rydberg (4): input: Introduce buflock, a one-to-many circular buffer mechanism input: evdev: Use multi-reader buffer to save space (rev3) input: evdev: Convert to dynamic event buffer (rev3) input: Use driver hint to compute the evdev buffer size drivers/input/buflock.h | 133 +++++++++++++++++++++++++++++++++++++++++++++++ drivers/input/evdev.c | 77 +++++++++++++++++----------- include/linux/input.h | 7 +++ 3 files changed, 187 insertions(+), 30 deletions(-) create mode 100644 drivers/input/buflock.h -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html