atm: add owner of push() callback to atmvcc
authorKrzysztof Mazur <krzysiek@podlesie.net>
Tue, 6 Nov 2012 22:16:57 +0000 (23:16 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Wed, 28 Nov 2012 00:36:48 +0000 (00:36 +0000)
commitec809bd817dfa1905283468e4c813684ed4efe78
tree6e13787ae7a88c73316e91f02b8116cc93309752
parentae088d663beebb3cad0e7abaac67ee61a7c578d5
atm: add owner of push() callback to atmvcc

The atm is using atmvcc->push(vcc, NULL) callback to notify protocol
that vcc will be closed and protocol must detach from it. This callback
is usually used by protocol to decrement module usage count by module_put(),
but it leaves small window then module is still used after module_put().

Now the owner of push() callback is kept in atmvcc and
module_put(atmvcc->owner) is called after the protocol is detached from vcc.

Signed-off-by: Krzysztof Mazur <krzysiek@podlesie.net>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Acked-by: Chas Williams <chas@cmf.nrl.navy.mil>
include/linux/atmdev.h
net/atm/common.c