lkml.org 
[lkml]   [2014]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Staging: comedi: add timeouts to while loops in s626.c
On 2014-03-02 04:13, Chase Southwood wrote:
>> On Friday, February 28, 2014 11:49 PM, Chase Southwood <chase.southwood@yahoo.com> wrote:
>
>>> On Friday, February 28, 2014 11:26 AM, Ian Abbott <abbotti@mev.co.uk> wrote:
>>>> On 2014-02-28 07:35, Chase Southwood wrote:
>
> [snip]
>
>>> In the case of s626_send_dac(), it doesn't seem to be used in any
>>> critical sections, so it could make use of Hartley's comedi_timeout().
>>>
>>> Some of the timeout errors could be propagated, especially for
>>> s626_send_dac() which is only reachable from very few paths.
>>
>>
>> Awesome, I'll swap all of my timeouts out for comedi_timeout() in s626_send_dac().
>
> Actually, after taking another look at this, I don't think that using comedi_timeout()
> here is going to work, actually.
> The context from which s626_send_dac() is called allows sleep all right, but readl() isn't
> a comedi function and therefore it doesn't behave (in parameters or return values) as
> the callback function parameter to comedi_timeout() requires. So unless I'm missing
> something particularly large here, I believe we'll have to do the timeouts here manually
> as well. Am I correct here, and if so, would you like the iteration based timeouts here
> as well, or a sleep-based timeout similar to that employed by comedi_timeout()?

The readl() could be done in a small callback function. As the
different while loops are checking for different results from readl(),
It would need a different callback functions for each case, or some
creative use of the callback function's 'context' parameter.

--
-=( Ian Abbott @ MEV Ltd. E-mail: <abbotti@mev.co.uk> )=-
-=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-


\
 
 \ /
  Last update: 2014-03-03 15:41    [W:0.135 / U:0.548 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site