New issue
Advanced search Search tips

Issue 808181 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

Linux USB backend should interpret EOVERFLOW as babble

Project Member Reported by reillyg@chromium.org, Feb 1 2018

Issue description

Chrome Version: ToT
OS: Linux

What steps will reproduce the problem?
(1) Call transferIn() on a USBDevice object with a buffer size less than the amount of data the device will respond with.

What is the expected result?
The returned promise resolves with a USBTransferInResult where |data| is the data returned by the device up to the requested size and |status| is "babble".

What happens instead?
The returned promise rejects and "Low-level transfer error: Value too large for defined data type (75)" is written to chrome://device-log.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Feb 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a4c9eb918f4406fa0a1c02195fa3138846cdd0ee

commit a4c9eb918f4406fa0a1c02195fa3138846cdd0ee
Author: Reilly Grant <reillyg@chromium.org>
Date: Fri Feb 02 18:11:48 2018

Intepret EOVERFLOW as babble in Linux USB backend

This adds a missing case to ConvertTransferResult which maps the
low-level error code EOVERFLOW to UsbTransferStatus::BABBLE, indicating
that the device sent more data than was expected.

Bug:  808181 
Change-Id: I697171615153e6de53d751f216fc3a2c6287efd5
Reviewed-on: https://chromium-review.googlesource.com/898323
Reviewed-by: Matt Reynolds <mattreynolds@chromium.org>
Commit-Queue: Reilly Grant <reillyg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534097}
[modify] https://crrev.com/a4c9eb918f4406fa0a1c02195fa3138846cdd0ee/device/usb/usb_device_handle_usbfs.cc

Status: Fixed (was: Assigned)

Sign in to add a comment