/* Unbind from PPP - currently we only do this when closing the socket, but we could put this into an ioctl if need be  */
static void pppoatm_unassign_vcc(struct atm_vcc *atmvcc)
/* Unbind from PPP - currently we only do this when closing the socket, but we could put this into an ioctl if need be  */
static void pppoatm_unassign_vcc(struct atm_vcc *atmvcc)
{
	struct pppoatm_vcc *pvcc;
	pvcc = atmvcc_to_pvcc(atmvcc);
	atmvcc->push = pvcc->old_push;
	atmvcc->pop = pvcc->old_pop;
	tasklet_kill(&pvcc->wakeup_tasklet);
	ppp_unregister_channel(&pvcc->chan);
	atmvcc->user_back = NULL;
	kfree(pvcc);
	module_put(THIS_MODULE);
}