diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-02-07 12:51:31 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-02-07 12:51:31 +0100 |
commit | d47e3da1759230e394096fd742aad423c291ba48 (patch) | |
tree | 19d3b7d9b1fe613e7fb0b74471d731d400a427ef /include | |
parent | Merge tag 'sound-5.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ti... (diff) | |
parent | HID: debug: fix the ring buffer implementation (diff) | |
download | linux-d47e3da1759230e394096fd742aad423c291ba48.tar.xz linux-d47e3da1759230e394096fd742aad423c291ba48.zip |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid
Pull HID fix from Jiri Kosina:
"A fix for a bug in hid-debug that can lock up the kernel in infinite
loop (CVE-2019-3819), from Vladis Dronov"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
HID: debug: fix the ring buffer implementation
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/hid-debug.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/include/linux/hid-debug.h b/include/linux/hid-debug.h index 8663f216c563..2d6100edf204 100644 --- a/include/linux/hid-debug.h +++ b/include/linux/hid-debug.h @@ -24,7 +24,10 @@ #ifdef CONFIG_DEBUG_FS +#include <linux/kfifo.h> + #define HID_DEBUG_BUFSIZE 512 +#define HID_DEBUG_FIFOSIZE 512 void hid_dump_input(struct hid_device *, struct hid_usage *, __s32); void hid_dump_report(struct hid_device *, int , u8 *, int); @@ -37,11 +40,8 @@ void hid_debug_init(void); void hid_debug_exit(void); void hid_debug_event(struct hid_device *, char *); - struct hid_debug_list { - char *hid_debug_buf; - int head; - int tail; + DECLARE_KFIFO_PTR(hid_debug_fifo, char); struct fasync_struct *fasync; struct hid_device *hdev; struct list_head node; @@ -64,4 +64,3 @@ struct hid_debug_list { #endif #endif - |