linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] HID: debug: fix the ring buffer implementation
@ 2018-10-03 17:19 Vladis Dronov
  2018-10-03 17:19 ` [PATCH 1/3] HID: debug: avoid infinite loop and corrupting data Vladis Dronov
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Vladis Dronov @ 2018-10-03 17:19 UTC (permalink / raw)
  To: Jiri Kosina, Benjamin Tissoires, linux-input, linux-kernel

This patchset is fixing some aspects of the ring buffer implementation in
drivers/hid/hid-debug.c. This implementation has certain problem points:

- it may stuck in an infinite loop
- it may return corrupted data
- a reader and a writer are not protected by spinlocks, which can lead to
  the corrupted data

The suggested patchset is a new ring buffer implementation which overwrites
the oldest data in case of an overflow. One can verify the suggested ring
buffer implementation by fuzzing it with modified kernel and fuzzer-reader
at: https://gist.github.com/nefigtut/33d56e3870b67493cc867344aed2a062

Vladis Dronov (3):
  HID: debug: avoid infinite loop and corrupting data
  HID: debug: provide reader-writer locking for the ring buffer
  HID: debug: fix ring buffer implementation

 drivers/hid/hid-debug.c   | 201 ++++++++++++++++++++++++++------------
 include/linux/hid-debug.h |   1 +
 2 files changed, 142 insertions(+), 60 deletions(-)

-- 
2.19.0

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-10-29 20:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-03 17:19 [PATCH 0/3] HID: debug: fix the ring buffer implementation Vladis Dronov
2018-10-03 17:19 ` [PATCH 1/3] HID: debug: avoid infinite loop and corrupting data Vladis Dronov
2018-10-03 17:19 ` [PATCH 2/3] HID: debug: provide reader-writer locking for the ring buffer Vladis Dronov
2018-10-03 17:19 ` [PATCH 3/3] HID: debug: fix the ring buffer writer implementation Vladis Dronov
2018-10-26 15:25 ` [PATCH 0/3] HID: debug: fix the ring buffer implementation Jiri Kosina
2018-10-29 20:51   ` Vladis Dronov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).