[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openbsd-tech
Subject:    when are device drivers closed?
From:       Ted Unangst <tedu () Stanford ! EDU>
Date:       2002-10-31 13:30:16
[Download RAW message or body]

It appears to me that sometimes the close function for a device driver
isn't being called.  My experiences indicate that the devclose function
is only called on the last close.  I'm using a modified /dev/audio for
this with some printfs to watch the action.

Situation:
proc 1 opens /dev/audio -- I see "open by process 1"
proc 2 opens /dev/audio -- I see "open by process 2"
kill proc 1 -- nothing happens
kill proc 2 -- I see "close by process 2"

So it seems that audioclose is only called when the last reference to the
vnode(?) is closed.  Is this normal behavior?  How can I ensure that close
gets called every time?

I have a close to working multiple open audio device, but this problem is
a real set back.


--
"I am making this trip to Africa because Washington is an international
city, just like Tokyo, Nigeria or Israel.  As mayor, I am an
international symbol.  Can you deny that to Africa?"
      - M. Barry, Mayor of Washington, DC

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic