diff options
| author | Vijayavardhan Vennapusa <vvreddy@codeaurora.org> | 2016-01-28 11:48:44 -0800 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-22 11:10:04 -0700 |
| commit | 9d89a6599da09d4289e69f29c96a37e4aa8dece1 (patch) | |
| tree | e651889d08c9c17d31c2fbc030de6eac89324065 /drivers/usb/gadget/function | |
| parent | 32abf3b67f7f57e792382e68bb6a79c1ec062fd8 (diff) | |
USB: f_fs: Add print message in case of error scenario
Add print message in case of error scenarios which will
be useful for debugging adb offline issues.
Change-Id: I75bc136eab05151abb187c1fa1e5956b6f507297
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Diffstat (limited to 'drivers/usb/gadget/function')
| -rw-r--r-- | drivers/usb/gadget/function/f_fs.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c index 2be964e26279..5032aae7e6e3 100644 --- a/drivers/usb/gadget/function/f_fs.c +++ b/drivers/usb/gadget/function/f_fs.c @@ -889,9 +889,20 @@ static ssize_t ffs_epfile_io(struct file *file, struct ffs_io_data *io_data) ret = -ENODEV; spin_unlock_irq(&epfile->ffs->eps_lock); if (io_data->read && ret > 0) { - ret = copy_to_iter(data, ret, &io_data->data); - if (!ret) - ret = -EFAULT; + + if (ret > data_len) { + ret = -EOVERFLOW; + pr_err("More data(%zd) received than intended length(%zu)\n", + ret, data_len); + + } else { + ret = copy_to_iter(data, ret, &io_data->data); + pr_debug("copied (%zd) bytes to user space\n", ret); + if (!ret) { + pr_err("Fail to copy to user\n"); + ret = -EFAULT; + } + } } } kfree(data); |
