Messages in this thread | | | From | Andy Shevchenko <> | Date | Fri, 31 Mar 2017 17:35:11 +0300 | Subject | Re: [PATCH v3] serdev: Add serdev_device_write subroutine |
| |
On Fri, Mar 31, 2017 at 4:22 PM, Rob Herring <robh@kernel.org> wrote: > On Thu, Mar 30, 2017 at 5:00 PM, Andrey Smirnov > <andrew.smirnov@gmail.com> wrote:
>> +int serdev_device_write(struct serdev_device *serdev, >> + const unsigned char *buf, size_t count, >> + unsigned long timeout) >> { >> struct serdev_controller *ctrl = serdev->ctrl; >> + int ret; >> >> + if (!ctrl || !ctrl->ops->write_buf || >> + (timeout && !serdev->ops->write_wakeup)) >> return -EINVAL; >> >> + mutex_lock(&serdev->write_lock); >> + do { >> + reinit_completion(&serdev->write_comp); >> + >> + ret = ctrl->ops->write_buf(ctrl, buf, count); >> + if (ret < 0) >> + break; >> + >> + buf += ret; >> + count -= ret; >> + >> + } while (count && >> + (timeout = wait_for_completion_timeout(&serdev->write_comp, >> + timeout))); > > Need to test for timeout < 0 here and return timeout when < 0.
It can't be the case since the variable is of unsigned type.
-- With Best Regards, Andy Shevchenko
| |