On Wed, 2012-11-28 at 11:04 +0100, Krzysztof Mazur wrote: > > The ->close() routine can just abort any pending rx/tx and just wait > for completion of currently running rx/tx code. That shouldn't take > long.
If it's been submitted to the hardware for DMA, it can't do that very easily. And if I can't be bothered to write code to go through the entire damn queue and inspect every packet to see if it's a data packet and check the VCI/VPI and try to steal it, it can't be done for the software queue either :) The queue ought to be short; if it isn't, then we already screwed up. The close therefore should be quick, and it *doesn't* have to be instant. If someone wants to return immediately, there's always vcc_release_async()... -- dwmw2
smime.p7s
Description: S/MIME cryptographic signature