On Wednesday, January 09, 2013 4:42 AM, Ian Abbott wrote:
> On 2013-01-09 10:40, Ian Abbott wrote:
>> On 2013/01/08 11:11 PM, H Hartley Sweeten wrote:
>>> The only difference between comedi_buf_write_alloc() and the *_strict()
>>> version is that the *_strict() one will only allocate the chunk if it
>>> can completely fulfill the request.
>>>
>>> Factor out the common code and add a flag parameter to indicate the 'strict'
>>> usage. Change the exported functions so they are just wrappers around the
>>> common function.
>>>
>>> Cleanup the common function a bit and use the comedi_buf_write_n_available()
>>> helper to determine the number of bytes available.
>>>
>>> Signed-off-by: H Hartley Sweeten <[email protected]>
>>> Cc: Ian Abbott <[email protected]>
>>> Cc: Greg Kroah-Hartman <[email protected]>
> Nak.
>>
>> This code seems to be moving barriers around (even though the comments
>> may or may not be accurate).  The inserted call to
>> comedi_buf_write_n_available() includes a barrier, but that occurs
>> _before_ async->buf_write_alloc_count is updated, rather than after.  Is
>> there a valid justification for that?
>
> This comment applies to patches 2 and 3: As there seem to be no previous 
> callers of comedi_buf_write_n_available(), just new callers called from 
> comedi_buf.c, perhaps make it a static function in comedi_buf.c.  Remove 
> the barrier from that function and restore the barrier to 
> __comedi_buf_write_alloc().  Also remove the part of 
> comedi_buf_write_n_available() that rounds down the number of available 
> bytes to a multiple of the sample size, since none of the new callers 
> seem to need that.
>
> How does that sound?

Ugh.. Overlooked the change in the barrier.

Your suggestion sounds ok to me. I'll try to get v3 out today.

Assuming v3 looks ok, the 6 patch series to drivers.c should still apply _after_
this series is merged.

Thanks for the review,
Hartley

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to