On Aug 8, 2012, at 11:41 AM, Hans Petter Selasky wrote: > On Wednesday 08 August 2012 19:24:18 Ed Schouten wrote: >>> Ed: I would really like to see a custom argument for the tsw_free(), >>> because it only needs to know the unit number, and the xsc for UCOM is >>> freed when this is called and cannot be referred. Is it possible to have >>> a separate "void *" for the tsw_free() function? Is this something which >>> you can implement? >> >> We could extend the TTY code to allow the softc to be changed, e.g. >> tty_set_softc(). This function could be called right before calling >> tty_rel_gone(). Still, I would prefer it if these kind of things would > > Are you sure that the new softc won't be used in any callbacks when > tty_rel_gone() is called, except for tsw_free() ? > >> not be part of the API. Is there really no way the deallocation of the >> softc can be delayed until tsw_free() is called? > > Yes, but that is inconvenient. We use the automatically allocated softc given > to the driver by newbus. When detach() returns, the softc is freed. Then we > need to block in detach, and that is causing the problem!
I thought the detach protocol was such that you shouldn't return from detach until all dangling references were gone. you could use tsw_free to wake up the detach sleeper, no? Warner _______________________________________________ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"