[PATCH 00/22] staging: comedi: pass subdevice around instead of async

Hartley Sweeten HartleyS at visionengravers.com
Fri May 2 17:40:37 UTC 2014


On Friday, May 02, 2014 5:50 AM, Ian Abbott wrote:
> For comedi subdevices that support asynchronous commands, the `async`
> member of `struct comedi_subdevice` points to a `struct comedi_async`
> allocated to manage asynchronous commands on that subdevice.  The
> pointer to this "async" structure is passed around by various functions
> and some of those functions need to get back to the "subdevice"
> structure from this pointer, so the "async" structure has a `subdevice`
> member pointing back to the `struct comedi_subdevice`.
>
> Since we can always get to the "async" structure from the "subdevice"
> structure, we can just pass around the pointer to the subdevice instead
> of the pointer to the async structure.  Then the `subdevice` member of
> `struct comedi_async` is no longer required and can be removed.
>
> 01) staging: comedi: remove redundant pointer dereference in comedi_poll()
> 02) staging: comedi: remove async parameter from resize_async_buffer()
> 03) staging: comedi: pass subdevice to comedi_buf_put()
> 04) staging: comedi: pass subdevice to comedi_buf_get()
> 05) staging: comedi: pass subdevice to comedi_buf_memcpy_to()
> 06) staging: comedi: pass subdevice to comedi_buf_memcpy_from()
> 07) staging: comedi: ni_tiocmd: pass subdevice to command setup functions
> 08) staging: comedi: pass subdevice to comedi_buf_write_alloc()
> 09) staging: comedi: pass subdevice to comedi_buf_write_free()
> 10) staging: comedi: pass subdevice to comedi_buf_write_n_allocated()
> 11) staging: comedi: pass subdevice to comedi_buf_read_alloc()
> 12) staging: comedi: pass subdevice to comedi_buf_read_free()
> 13) staging: comedi: pass subdevice to comedi_buf_read_n_available()
> 14) staging: comedi: pass subdevice to comedi_buf_reset()
> 15) staging: comedi: pass subdevice to comedi_buf_is_mmapped()
> 16) staging: comedi: pass subdevice to comedi_buf_munge()
> 17) staging: comedi: pass subdevice to __comedi_buf_write_alloc()
> 18) staging: comedi: pass subdevice to comedi_buf_write_n_available()
> 19) staging: comedi: mite: pass subdevice to mite_buf_change()
> 20) staging: comedi: mite: pass subdevice to mite_sync_input_dma()
> 21) staging: comedi: mite: pass subdevice to mite_sync_output_dma()
> 22) staging: comedi: remove subdevice member of struct comedi_async

Reviewed-by: H Hartley Sweeten <hsweeten at visionengravers.com>

Ian,

There are merge conflicts if this series is applied after the one I have
posted that you have already tagged Reviewed-by.

[PATCH v2 00/12] staging: comedi: adv_pci1710: more async command cleanup
[PATCH 00/32] staging: comedi: continue async command cleanup

Note: the second series is really [PATCH v2 00/32] but I forgot to add the v2...

Regards,
Hartley



More information about the devel mailing list