HID: fix buffer allocations
When using hid_output_report(), the buffer should be allocated by hid_alloc_report_buf(), not a custom malloc. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
Родитель
3db187e7bf
Коммит
9d27f43274
|
@ -1178,7 +1178,7 @@ static void hidinput_led_worker(struct work_struct *work)
|
|||
|
||||
/* fall back to generic raw-output-report */
|
||||
len = ((report->size - 1) >> 3) + 1 + (report->id > 0);
|
||||
buf = kmalloc(len, GFP_KERNEL);
|
||||
buf = hid_alloc_report_buf(report, GFP_KERNEL);
|
||||
if (!buf)
|
||||
return;
|
||||
|
||||
|
|
|
@ -582,7 +582,7 @@ static void i2c_hid_request(struct hid_device *hid, struct hid_report *rep,
|
|||
int ret;
|
||||
int len = i2c_hid_get_report_length(rep) - 2;
|
||||
|
||||
buf = kzalloc(len, GFP_KERNEL);
|
||||
buf = hid_alloc_report_buf(rep, GFP_KERNEL);
|
||||
if (!buf)
|
||||
return;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче