mirror-linux/include/linux/comedi
Ian Abbott d1b3b9c70e comedi: kcomedilib: Add loop checking variants of open and close
Add `comedi_open_from(path, from)` and `comedi_close_from(dev, from)` as
variants of the existing `comedi_from(path)` and `comedi_close(dev)`.
The additional `from` parameter is a minor device number that tells the
function that the COMEDI device is being opened or closed from another
COMEDI device if the value is in the range [0,
`COMEDI_NUM_BOARD_MINORS`-1].  In that case the function will refuse to
open the device if it would lead to a chain of devices opening each
other.  (It will also impose a limit on the number of simultaneous opens
from one device to another because we need to count those.)

The new functions are intended to be used by the "comedi_bond" driver,
which is the only driver that uses the existing `comedi_open()` and
`comedi_close()` functions.  The new functions will be used to avoid
some possible deadlock situations.

Replace the existing, exported `comedi_open()` and `comedi_close()`
functions with inline wrapper functions that call the newly exported
`comedi_open_from()` and `comedi_close_from()` functions.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Link: https://patch.msgid.link/20251027153748.4569-2-abbotti@mev.co.uk
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-11-26 14:20:10 +01:00
..
comedi_8254.h comedi: comedi_8254: Conditionally remove I/O port support 2023-10-05 13:34:04 +02:00
comedi_8255.h comedi: comedi_8255: Conditionally remove I/O port support 2023-10-05 13:34:04 +02:00
comedi_isadma.h
comedi_pci.h
comedi_pcmcia.h
comedi_usb.h
comedidev.h comedi: Add reference counting for Comedi command handling 2025-11-26 14:19:41 +01:00
comedilib.h comedi: kcomedilib: Add loop checking variants of open and close 2025-11-26 14:20:10 +01:00