[lkml]   [2019]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: spi: Add call to spi_slave_abort() function when spidev driver is released
On Thu, Sep 26, 2019 at 04:06:45PM +0200, Lukasz Majewski wrote:
> > On Thu, Sep 26, 2019 at 2:49 PM Lukasz Majewski <> wrote:

> > > The question is if we shall call the spi_slave_abort() when
> > > cleaning up spi after releasing last reference, or each time
> > > release callback is called ?

> > TBH, I don't know. Is it realistic that there are multiple opens?

> I'm using on my setup only one test program to use /dev/spidevX.Y and
> /dev/spidevA.B (loopback with wired connection).

> However, you also shall be able to connect via ssh and run the same
> setup in parallel...

It doesn't seem entirely realistic, but I can imagine cases like
fork()/exec() where we end up with two copies of the file open
but end up immediately closing one.

> > That means the abort is called only for the last user.
> > And only if the underlying device still exists. Which means that if
> > it has disappeared (how can that happen? spidev unbind?),

> In my case, I just disconnect some SPI signals and the test program
> just hangs. I do need to ctrl+c to stop it (or use timeout).

> From my debugging the .release callback is called each time the program
> is aborted (either with ctrl+c or timeout).

Should be on file close IIRC.
[unhandled content-type:application/pgp-signature]
 \ /
  Last update: 2019-09-26 17:18    [W:0.046 / U:2.656 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site