stopping a command while using TRIG_NONE

I'm having trouble properly terminating a command from both kernel space
and user space.  I'm using the ni_pcidio driver with the latest stable
version of kcomedilib and comedi. I've modified the driver to respond to
an external timer and use the stop_src TRIG_NONE.  Everything works fine
with the data collection, but when I try to stop the command using
command_cancel(), the response is strange. In kernel space interrupts
keep occuring, although my callbacks don't occur anymore, however the
callback event mask seems to be unchanged. In user space i'm simply
seeing the interrupts continue to occur.

As strange as it seems, in user-space everything *appears* to be
functioning fine: when comedi_cancel() is called, read() will return -1,
but the interrupts don't stop. A near term fix has been running
demo/cmd.c (for example) with stop_src = TRIG_COUNT instead. This stops
the interrupts.

Is TRIG_NONE as a stop_src working on any driver?  Ideas?

---brent

Received on 2002-08-03Z04:53:11